stm32f103中文资料.
stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32f103中文资料.stm32fSTM32F103XC,STM32F103XD,STM32F103xE数据手册51.2典型数值51.3典型曲线514负载电容51.5引肽输入电压aaa:aaa:aaa:::::a:::::::::29516供电方案1着国国重面国面面面面■5.1.7电流消耗测量3052绝对最大额定值.…53工作条件…3253.1通用工作条件…32532上电和掉电时的工作条件32533内嵌复位和电源控制模块特性32534内置的参照电压535供电电流特性5.3.6外部时钟源特性…405.37内部肘钟源特性11画44538PLL特性5.39存储器特性4553.10FSMC特性∴5311EMC特性605312绝对最大值(电气敏感性)…6153.131O端口特性625314NRsT引脚特性645315TM定时器特性5316通信接口655317CAN(控制器局域网络)接凵53.1812位ADC特性53.19DAC电气参数7553.20温度传感器特性…766封装特性…776.1封装机械数据…重面重重面面国国面面:::62热特性.8362.1参考文档846.2.2选择产品的温度范围847订货代码868版本历史87参照209年3月STM32F103XCD数据手册英文第5版(本译文仅供参考,如有翻译错误,请以英文原稿为准)3/87STM32F103xC,STM32F103XD,STM32F103xE数据手册1介绍本文给出了STM32F103XC、STM32F103xD和STM32F103XE大容量增强型产品的订购信息和器件的机械特性。有关完整的STM32F103XX系列的详细信息,请参考第2.2节。大容量STM32F103X数据手册,必须结合STM32F10XX参考手册一起阅读有关内部闪存存储器的编程、擦除和保护等信息,请参考《STM32F10XXxX闪存编程参考手册》。参考手册和闪存编程参考手册均可在ST网站下载:www.st.com/mcu有关 Cortex-M3核心的相关信息,请参考《 Cortex-M3技术参考手册》,可以在ARM公司的网站下4i:httpinfocenter.arm.com/help/index.isp?topic=/com.arm.doc.ddi0337eisCortexIntellgent Processors by ARM ARME参照209年3月STM32F103XCDE数据手册英文第5版(本译文仅供参考,如有翻译错误,请以英文原稿为准)4/87STM32F103XC,STM32F103XD,STM32F103xE数据手册2规格说明STM32F103XC、STM32F103xD和STM32F103XE增强型系列使用高性能的 ARMR CortexTM-M332位的RSC内核,工作频率为72MHz,内置高速存储器(高达512K字节的闪存和64K字节的SRAM丰富的增强O端冂和联接到两条APB总线的外设。所有型号的器件都包含3个12位的ADC、4个通用16位定时器和2个PWM定时器,还包含标准和先进的通信接口:多达2个PC接口、3个SP接口、2个S接口、1个SD接口、5个 USART接口、一个USB接口和一个CAN接口。STM32F103X人容量增强型系列工作于-40°至+105°C的温度范围,供电电压2.0V至36V,一系的省电模式保证低功耗应用的要求STM32F103X大容量增强型系列产品提供包括从64脚至144脚却的6种不同封装形式;根据不同的封装形式,器件中的外设配置不尽相同。下面给出了该系列产品中所有外设的基本介绍。这些丰富的外设置,使得STM32F103XX大容量增强型系列微控制器适合于多种应用场合电机驱动和应用控制医疗和手持设备●PC游戏外设和GPS屮台●工业应用:可编程控制器(PLC)、变频器、打印机和扫描仪警报系统、视频对讲、和暖气通风空调系统等图1给出了该产品系列的框图。21器件一览表2STM32F103XC、STM32F103XD和STM32F103XE器件功能和配置外设STM32F103RXSTM32F103VxSTM32F103Zx闪存(K字节)2563845122563845122563845512SRAM(K字节)4864486464FSMC(静杰存储器控制器)无有(1)有通用4个TM2、TM3、TM4、TM5)定时器高级搾制2个(TM1、TM8)基本2个(TM6、TM7SPI(IS)(2)3个(sP1、SP2、SPB),其中SP2和SP可作为S通信2C2个(C1、PC2)通信 USART/UART5个 USART1、 USART2、 USART3、UART4、UART5)接口USB1个USB20全这)CAN1个(20B主动)SDIOGP|O端口518011212位ADC模块(通道数)3(16)3(16)3(21)12位DAC转換器(通道数)2(2)CPU频率72MHZ1作电压2.0-36V环境温度:40℃~+85℃/-40℃~+105℃(见表10)作温度结温度:-40℃-+125℃(见表10)封装形式LQFP64, WLCSP64LQFP100, BGA100LQFP144, BGA1441.对于LQFP100和BGA100封装,只有FSMc的Bank1和Bank2可以使用。Bank1只能使用NE1片选支持多路复用NOR/PSRAM存储器,Bank2只能使用NCE2片选支持一个16位或8位的NAND闪存存储器。因为没有端口G,不能使用FSMC的中断功能。2.SP2和sP3接口能够灵活地作S門模式和S音频模式间切换。参照209年3月STM32F103XCD数据手册英文第5版(本译文仅供参考,如有翻译错误,请以英文原稿为准)5/87STM32F103XC,STM32F103XD,STM32F103xE数据手册22系列之间的全兼容性STM32F103Xx是·个完整的系列,其成员之间是完全地脚对脚兼容,软件和功能上也兼容。在参考手册中,STM32F103x4和STM32F103X6被归为小容量产品,STM32F103X8和STM32F103XB被归为中等容量产品,STM32F103XC、STM32F103XD和STM32F103E被归为大容量产品。小容量和人容量产品是中等容量产品(STM32F103X8/B)的延伸,分别在对应的数据手册中介绍STM32F103x46数据手册和STM32F103xC/D/E数据手册。小容量产品只有较小的闪存存储器、RAM空间和较少的定时器和外设。而大容量的产品则具有较大的闪存存储器、RAM空间和更多的片上外设,如SDO、FSMC、fS和DAC等,同时保持与其它同系列的产品兼容STM32F103x4、STM32F103X6、STM32F103xC、STM32F103XD和STM32F103XE可直接替换中等容量的STM32F103X8/B产品,为用户在产品开发中尝试使用不同的存储容量提供了更大的自由度表3STM32F103XX系列小容量产品中等容量产品大容量产品脚16K闪存32K闪存)64K闪存128K闪存256K闪存384K闪存512K闪存数6K10K20K20K48K或64K64K(2)64KRAMRAMRAMRAMRAMRAMRAM3个 USART+2个UART1444个16位定时器、2个基本定时器3个SP、2个2S、2个C3个 USARTUSB、CAN、2个PWM定时器3个16位定时器3个ADC、1个DAC、1个SD|O642个 USART2个SP、2个PC、USB2个16位定时器CAN、个PWM定时器FSMC(100和144封装0)481个Pl、1个P、USB、1个ADCCAN、1个PWM定时器362个ADC对于订购代码的温度尾缀(6或7)之后没有代码A的产品,其对应的电气参数部分,请参考STM32F103X8/B中等容量产品数据手册。2.只有CSP封装的带256K闪存的产品,才具有64K的RAM3.100脚封装的产品中没有端口F和端口G。23概述23.1ARM的 CortexTm-Mv3核心并内嵌闪存和SRAMARM的 Cortex TM-M3处理器是最新一代的嵌入式ARM处理器,它为实现MCU的需要提供了低成本的平台、缩减的引脚数日、降低的系统功耗,同时提供卓越的计算性能和先进的中断系统响应。ARM的 Cortex ti-M3是32位的RsC处理器,提供额外的代码效率,在通常8和16位系统的存储空间上发挥了ARM内核的高性能。STM32F103XC、STM32F103XD和STM32F103XE增强型系列拥有内置的ARM核心,因此它与所有的ARM工具和软件耒容。图1是该系列产品的功能框图232内置闪存存储器高达512K字节的内置闪存存储器,用于存放程序和数据参照209年3月STM32F103XCD数据手册英文第5版(本译文仅供参考,如有翻译错误,请以英文原稿为准)6/87STM32F103XC,STM32F103XD,STM32F103xE数据手册23.3cRc(循环冗余校验)计算单元CRc(循环冗余校验)计算单元使用一个固定的多项式发生器,从一个32位的数据字产一个CRC码在众多的应用中,基于CRC的技术被用于验证数据传输或存储的一致性。在EN/EC60335-1标准的范围内,它提供了一种检测闪存存储器错误的于段,CRC计算单元可以用于实时地计算软件的签名,并与在链接和生成该软件时产生的签名对比234内置SRAM多达64K字节的内置SRAM,CPU能以0等待周期访问(读/写)23.5FSMc(可配置的静态存储器控制器)STM32F103xC、STM32F103x和STM32F103xE增强型系列集成了FSMC模块。它只有4个片选输出,支持PC卡CF卡、SRAM、 PSRAM、NOR和NAND。功能介绍:三个FSMC中断源,经过逻辑或连到NVC单元写入F|FO;代犸可以在除NAND闪存和PC卡外的片外存储器运行;目标频率fctk为HCLK/2,即当系统时钟为72MHz时,外部访问是基于36MHz时钟;系统时钟为48MHz时,外部访问是基于24MHz时钟。23.6LcD并行接口FsMC可以配置成与多数图现LCD控制器的无缝连接,它支持 FIntel8080和 Motorola6800的模式,并能够灵活地与特定的LCD接口。使用这个LCD并行接口可以很方便地构建简易的图形应用环境,或使用专用加速控制器的髙性能方案。237嵌套的向量式中断控制器(NVc)STM32F103XC、STM32F103XD和STM32F103XE增强型产品内置嵌套的向量式中断搾制器,能够处理多达60个可屏蔽中断通道(不包括16个 Cortex Tm-M3的中断线)和16个优先级。●紧耦合的NVC能够达到低延迟的中断响应处理中断向量入口地址直接进入内核紧耦合的NVC接口●允许中断的早期处理●处理娩到的较高优先级中断●支持中断尾部链接功能●自动保存处理器状态●中断返回时自动恢复,无需额外指令开销该模块以最小的中断延迟提供灵活的中断管理功能238外部中断/事件控制器(EXT)外部中断事件控制器包含19个边沿检测器,用于产生中断事件请求。每个中断线都可以独立地配置它的触发事件(上升沿或下降沿或姒边沿),并能够单独地被屏敞;有个挂起奇仔器维持所有中断请求的状态。EXT可以检测到脉冲宽度小于内部APB2的时钟周期。多达112个通用WO口连接到16个外部中断线。23.9时钟和启动系统时钟的选择是在启动时进行,复位吋内部8MHz的RC振涝器被选为默认的CPU时钟,随后可以选择外部的、具失效监控的4~16MHz时钟;当检测到外部时钟失效时,它将被隔离,系统将自动地切换到内部的RC振荡器,如果使能了中断,软件可以接收到相应的中断。同样,在需要时可以采取对PLL时钟完全的中断管玭(如当一个间接使用的外音振荡器失效时)。参照209年3月STM32F103XCD数据手册英文第5版(本译文仅供参考,如有翻译错误,请以英文原稿为准)7/87STM32F103XC,STM32F103XD,STM32F103xE数据手册多个预分频器用于配置AHB频率、高速APB(APB2)和低速APB(APB1)区域。AHB和高速APB的最高频率是72MHz,低速APB的最高频率为36MHz参考图2的时钟驱动框图。23.10自举模式在启动时,通过自举引脚可以选择三种自举模式中的和:从程序闪存存储器自举从系统存储器自举●从内部SRAM自举自举加载程序( Bootloader)存放于系统存储器中,可以通过 USART1对闪存重新编程23.11供电方案●VDD=2.0~3.6V:VD引脚为l/O引和内部调压器供电。VεsA,√υA=2.0-~-3.6V:为ADC、复位模块、RC振荡器和PL的模拟部分提供供电。使用ADC时,VDA不得小于24V。VpoA和VssA必须分别连接到VDp和∨ssn●VBAT=18~36V:当关闭VpD时,(通过内部电源切换器)为RTC、外部32kHz振荡器和后备寄存器供电。关于如何连接电源引脚的详细信息,参见图12供电方案。23.12供电监控器本产品內部集成了上电复位(POR掉电复位PDR)电路,该电路始终处于上作状态,保证系统在供电超过2V时工作;当VD低于设定的阀值( VPOR/PDR)时,置器件于复位状态,而不必使用外部复位电路。器件中还有一个可编程电压监测器(PVD),它监视V/VpA供电并与阀值∨pv比较,当∨DD低于或高于阀值V时产生中新,中断处押程序可以发出警告信息或将微控制器转入安全模式。PVD功能需要通过程序廾启。关」 VapOr/P和V的值参考表1223.13电压调压器调压器有三个操作模式:主模式(MR)、低功耗模式(LPR)和关断模式●主模式(MR)用于正常的运行操作低功耗模式(LPR)用于CPU的停机模式关断模式用于CPU的待机模式:调压器的输出为咼阻状态,内核电路的供电切断,调压器处于零消耗状态(但寄存器和SRAM的内容将丢失)该调压器在复位后始终处于工作状态,在待机模式下关闭处于高阻输出。23.14低功耗模式STM32F103xC、STM32F103XD和STM32F103xE増强型产品支持三种低功耗模式,可以在要求低功耗、短启动吋间和多种唤醒事件之间达到最佳的平衡。睡眠模式在眠模式,只有CPU停止,所有外设处于工作状态并可在发生中断事件时唤酲CPU。停机模式在保持SRAM和寄存器内容不丢失的情况下,停机模式可以达到最低的电能消耗。在停机模式下,停止所有内部1.8V部分的供电,PLL、HS的RC振荡器和HSE皛体振荡器被关闭,调压器可以被置于普通模式或低功耗模式。可以通过任一配置成EXT的信号把微控制器从停机模式中唤醒,EXT信号可以是16个外部ⅣO口之一、PVD的输出、RTC闹钟或USB的唤醒信号●待机模式在待机模式下可以达到最低的电能消耗。内部的电压调压器被关闭,因此所有内部1.8V部分的供电被切断;PLL、HSI的RC振荡器和HSE晶体振荡器乜被关闭;进入待机模式后,SRAM和寄存器的内容将消尖,但后备寄存器的内容仍然保留,待机电路仍工作,从待杋模式退出的条件是:NRST上的外部复位信号、DG复位、WKUP引脚上的一个上升边沿或RTC的闹钟到时参照209年3月STM32F103XCD数据手册英文第5版(本译文仅供参考,如有翻译错误,请以英文原稿为准)8/87STM32F103XC,STM32F103XD,STM32F103xE数据手册注:在进入停机线待机模式时,和对应的时钟不会数停止2.3.15DMA灵活的12路通用DMA(DMA1上有7个通道,DMA2上有5个通道)可以管理存储器到存储器、设备到存储器和存储器到设备的数据传输:2个DMA控制器支持环形缓冲区的管理,避免了控制器传输到达缓冲区结尾时所产生的中断。每个通道都有专门的硬件DMA请求逻辑,同时可以由软件触发每个通道;传输的长度、传输的源地址和目标地址都可以通过软件单独设置DMA可以用于主要的外设:SP、P2C、 USART,通用、基本和高级控制定时器TMx,DAC、P2s、SD|O和ADC2316RTc(实时时钟和后备寄存器RTC和后备寄存器通过一个廾关供电,在V0有效时该廾关选择VD供电,否则由VAT引脚供电。后备寄存器(42个16位的寄存器)可以用于在关闭VD时,保存84个字节的用户应用数据。RTC和后备寄存器不会被系统或电源复位源复位;当从待机模式唤醒时,也不会被复位。实时时钟具有一组连续运行的计数器,可以通过适当的软件提供日历时钟功能,还具有闹钟中断和阶段性中断功能。RTC的驱动时钟可以是一个使用外部晶体的32.768kHz的振荡器、内部低功耗RC振荡器或高速的外部时钟经128分频。内部低功耗RC振荡器的典型频率为40kHz。为补偿大然晶体的偏差,可以通过输岀一个512Hz的信号对RTC的时钟进行校准。RTC具有一个32位的可编程计数器,使用比较寄存器可以进行长时间的测量。有一个20位的预分频器用于时基时钟,默认情况下时钟为32768kHz时,它将产生一个1秒长的时间基准。23.17定时器和看门狗大容量的STM32F103x增强型系列产品包含最多2个高级控制定时器、4个普通定时器和2个基本定时器,以及2个看门狗定时器和1个系统嘀嗒定时器下表比较了高级控制定时器、普通定时器和基本定时器的功能:表4定时器功能比较匚定时器计数器分辩率计数器类型预分系数产生DMA请求捕获/比纹通道补输出TIM1向上,向下,1-65536之间16位的仁意整数可以TIM向上F下有TIM2TIM316位下,1-65536之间的任意整数可以4TIM4向上/下没有TIM5TIMo16位向上1~65536之间的仁意整数可以TMZ没有高级控制定时器(TIM1和TM8两个高级控制定时器(TM1和TM8)可以被看成是分配到6个通道的三相PWM发生器,它具有带死区插入的互补PWM输出,还可以被当成完整的通用定时器。四个独立的通道可以用于:输入捕获输出比较●产生PWM(边缘或中心对齐模式)●单脉冲输出阽置为16位标准定时器时,它与TIMx定时器具有相同的功能。置为16位PWM发生器时,它具有全调制能力(0~100%)在调试模式下,计数器可以被冻结,同吋PWM输出被禁止,从而切断由这些输出所控制的开关。很多功能都与标准的TM定时器相同,内部结构也相同,因此高级控制定时器可以通过定时器链接功能与TIM定时器协同操作,提供同步或事件链接功能。参照209年3月STM32F103XCD数据手册英文第5版(本译文仅供参考,如有翻译错误,请以英文原稿为准)9/87STM32F103XC,STM32F103XD,STM32F103xE数据手册通用定时器TMx)STM32F103XC、STM32F103xD和STM32F103XE增强型系列产品中,内置了多达4个可同步运行的标准定时器TM2、TIM3、TM4和TM5)。每个定时器都有一个16位的自动加载递加/递减计数器、个16位的预分频器和4个独立的通道,每个通道都可用于输入捕获、输出比较、PWM和单脉冲模式输出,在最大的封装配置中可提供最多16个输入捕获、输出比较或PWM通道。它们还能通过定时器链接功能与高级控制定时器共同工作,提供同步或事件链接功能。在调试模式计数器可以被冻结。任一标准定时器都能用于产生PWM输出。每个定时器都有独立的DMA请求机制这些定时器还能够处理增量编码器的信号,也能处理13个霍尔传感器的数字输出。基本定时器TM6和TM7这2个定时器主要是用」产生DAC触发信号,也可当成通用的16位时基计数器独立看门狗独立的看门狗是基于一个12位的递减计数器和一个8位的预分频器,它由一个内部独立的40kHz的RC振荡器提供时钟;因为这个RC振荡器独立于上时钟,所以它可运行于停机和待机模式。它可以被当成看门狗用于在发生问题时复位整个系统,或作为一个自由定时器为应用程序提供超时管理。通过选项字节可以軋置成是软件或硬件启动看门狗。在调试模式卜,计数器可以被冻结。窗口看门狗窗凵看门狗内有一个7位的递减计数器,并可以设置成自由运行。它可以被当成看门狗用于在发生问题时复位整个系统。它由主时钟驱动,具有早期预警中断功能;在调试模式下,计数器可以被冻结。系统时基定时器这个定时器是专用于实时操作系统,也可当成一个标准的递减计数器。它具有下述特性●24位的递减计数器自动重加载功能●当计数器为0时能产生一个可屏蔽系统中断可编程时钟源2318|C总线多达2个C总线接口,能够工作于多主模式或从模式,支持标准和快速模式。C接口支持7位或10位寻址,7位从模式时支持双从地址寻址。内置了硬件CRC发生器/校验器。它们可以使用DMA操作并支持 SMBuS总线20版/ PMBus总线2319通用同步/异步收发器 USART)STM32F103xC、STM32F103XD和STM32F103xE增强型系列产品中,内置了3个通用同步/异步收发器( USART1、 USART2和 USART3),和2个通用异步收发器UART4和UART5)这5个接凵提供异步通信、支持| DA SIR ENDEO传输编解码、多处理器通信模式、单线半双工通信模式和L|N主/从功能。USART1接口通信速率可达4.5兆位秒,其他接口的通信速率可达225兆位秒。USART1、 USART2和 USART3接口具有硬件的CTS和RTS信号管理、兼容|SO7816智能卡模式和类S門通信模式,除了UART5之外所有其他接口都可以使用DMA操作。2320串行外设接口sP)多达3个SP接冂,在从或主模式下,全双L和半双L的通信速率可达18兆位/秒。3位的预分频器可产生8种主模式频率,可配置成每帧8位或16位。硬件的CRC产生/校验支持基本的SD卡和MMC模式。所有的S門l接口都可以使用DMA操作。参照209年3月STM32F103XCD数据手册英文第5版(本译文仅供参考,如有翻译错误,请以英文原稿为准)10/87
- 2020-12-01下载
- 积分:1
基于MFC的考试管理系统
该资源详细的讲解了怎样开发考试管理系统的步骤以及有大部分的代码资源。有利于学习开发、对照有关的系统开发。目录摘要…ABSTRACTII目录II第I章引言1开发背景…误!未定义书签。112选题意义误!未定义书签。113研究内容第2章系统的相关技术介绍…21MFC简介22 SQL SERVER2000简介423ODBC简介24 CRECORDSET类和 CRECORDVIEW类简介+“++++++++4+++25 POWERDESIGNER1简介24本章小结第3章系统的分析与设计.··中·“·::···········:··················“···:··*······3.1需求分析32系统设计321概要设计…非着丰非非目非非自83.2.2系统总体流程图…323系统模块设计,…324菜单设计.103.3本章小结…11第4章数据库设计4I数据库的需求分析124.2数据库表设计4.3数据库建表语句1344本章小结…19第5章系统实现205.1登录模块实现*····-··········*·=·····205.2基本信息模块实现1面错误!未定义书签。2052.1管理员信息…误!未定义书签。20522系部信息错误!未定义书签。24523班级信25524学生信错误!未定义书签。26525教师信息→·+“·*错误!未定义书签。275.2.6章节信息285.3题库管理模块实现.295.3.1判断题信息29532填空题信息*→··*→···········“····“=:··*····*······*·················“·533单选题信息…错误!未定义书签。30534多选题信息错误!未定义书签。3054试卷管理模块实现,…+++++++++++++++++++…误!未定义书签。31541定制试卷中··中中·和中·,···非中…{误!未定义书签。31542试卷管理错误!未定义书签。3455备份惨改模块实现.375.3.修改密码.5.32备份数据库13956本章小结日着南·前非非非非非第6章结束语.141致谢42参考文献43第1章引1.1开发背景在各学校开始逐步引入计算机的今天,试卷作为考察教学成果的重要手段之直没有得到较好的改善,试卷的编辑、整珥工作占了很大的工作量叫传统的手工出卷过程,存在不少弊端:◆出现不必要的重复劳动,造成人力资源及时间上的浪费:◆缺乏科学的衡量、评价及统一试卷难易度、试卷质量的有效手段;◆存在自教自考,考前漏题的情况◆试卷容易出现错漏缺现象,引起不必要的麻烦在以往的教学中,老师出试卷大多由手工出卷,这样生成的试卷往往会有知识点分布太集中、难易程度不当、分值分布不均等一些缺点;这样,既增加了老师的负担,也没有达到很好考查学生学习的真实水平,造成教学上的失误。基于以上的原因,有很多从事软件开发的人员,在试卷自动生成方面做了很大的研究。本系统希望利用计算杋强大的数据处理功能,由计算机逐步代替传统的人工出卷,并且规范岀卷程序,使出卷工作更加和学化、现代化,使教育工作更上一层楼。1.2选题意义w. docIn co考试管理系统,此课题目的是在我们以往学习数据库的基础上,灵活运用数据库开发软件C艹+和结构化查询语言SQL2000,开发出能供教学使用的一套出试卷系统,以方便教学。应用所学的有关数据库的知识,更深入地学习VC+和SQL200,将所学的书面知道和实际应用结合起来,以达到学以致用的日的。在各学校开始逐步引入计算机的今天,试卷作为考察教学成果的重要手段之·,通用试卷自动生成系统升化了传统的手工出卷,解决了很多问题,例如:遥免了不必要的重复劳动:节约了人力资源及时间;使用科学的衡量、评价及统一试卷难易度、试卷质量的有效手段;大幅度降低了试卷出现错漏缺的机率;减少不必要的麻烦。1.3开发内容班级考试管理系统主要涉及的信息数据包括系统管理员信息,系部信息,班级信息,学生信息,教师信息,试卷信息和各种题库等数据,涉及的操作主要包括各种信息数据的管理,为考试定制的试卷,试卷管理等管理操作,教师密码修改,备份数据库等。经考查与分析,典型的考试管理系统主要应具有以下功能:◆基本信息管理:包括对系统管理员信息,系部信息,班级信息,学生信息,救师信息,章节信息的录入,修改和删除等功能。◆试卷管理:包括对已创建的试卷数据的删狳,定制考试试卷,选择考试试卷等功能◆题库管理:包扦对判断题,填空题,单项选择题,多项选择题等题库的管理功能。QOc(m豆丁www.docin.com第2章系统的相关技术介绍21MFC介绍MFC( Microsoft Foundation Class Library)屮的各种类结合起来构成了一个应用程序框架,它的日的就是让程序员在此基础上来建立 Windows下的应用程序,这是一种相对SDK来说更为简单的方法。因为总体上,MFC框架定义了应用程序的轮廓,并提供了用户接口的标准实现方法,程序员所要做的就是通过预定义的接口把具体应用稈序特有的东西填入这个轮廓。 MicrosoftⅤ Visual c++提供了相应的工具来完成这个工作: App wizard可以用来生成初步的框架文件(代码和资源等);资源编辑器用于帮助直观地设计用户接口; Class wizard用来协助添加代码到框架文件;最后,编译,则通过类库实现了应用程序特定的逻辑3。MFC实现了对应用程序概念的封装,把类、类的继承、动态约束、类的关系和相互作用等封装起来。这样封装的结果对科序员来说,是一套开发模板(或者说模式)。针对不同的应用和目的,程序员采用不同的模板。例如,SD应用程序的模板,MDI应用程序的模板,规则DIL应用程序的模板,扩展DLL应用程序的模板, OLE ACTIVEX应用程序的模板,等等。这些模板都采用了以文档-视为中心的思想,每一个模板都包含一组特定的类。典型的MD应用程序的构成将在下节具体讨论。为了支持对应用程序概念的封装,MC内部必须作大量的作。例如,为了实现消息映射机制,M℃编程框架必须要保证首先得到消息,然后按既定的方法进行处理。又如,为了实现对DLL编程的支持和多线程编程的支持,MIFC内部使用了特别的处理方法,使用模块状态、线程状态等来管理一些重要信息。虽然,这些内部处理对程序员来说是透明的,但是,懂得和理解MFC内部机制有助于写出功能灵活而强大的程序。MFC借助C艹的优势为 Windows开发开辟了一片新天地,同时也借助 Application wizzard使开发者摆脱离」那些每次都必与基本代码,借助 Class Wizard和消息映射使丌发者摆脱了定义消息处理时那种混乱和冗长的代码段。更令人兴合的是利用C++的封装功能使开发者摆脱 Windows中各种句炳的困扰,只需要面对C+中的对象,这样一来使开发更接近开发语言而远离系统。正因为MFC是建立在C++的基础上,所以我强调CC+语言基础对开发的重要性。利用C++的封装性开发者可以更容易理解和操作各种窗口对象;利用C+的派生性开发者可以减少开发自定义窗口的时间和创造出可重用的代码:利用虚拟性可以在必要时更好的控制窗口的活动。而且C++本身所具备的超越C语言的特性都可以使开发者编写出更易用,更灵活的代码在MFC中对消息的处理利用了消息映射的方法,该方法的基础是宏定义实现,通过宏定义将消息分派到不同的成员函数进行处理。因此对于开发系统具有一定的优势。总之,MFC封装了Win32API, OLE APⅠ, ODBC API等底层函数的功能,并提供更高一层的接口,简化了 Windows编程。同时,MC攴持对底层API的直接调用。MFC提供了一个 Windows应用程序开发模式,对程序的控制主要是由MFC框架完成的,而且MFC也完成了大部分的功能,预定义或实现了许多事件和消息处理,等等。框架或者由其本身处理事件,不依赖程序员的代码;或者调用程序员的代码来处理应用稈序特定的事件。MFC是C++类库,程序员就是通过使用、继承和扩展适当的类来实现特定的目的。例如,继承时,应用程序特定的事件由程序员的派生类来处理,不感兴趣的山基类处理。实现这种功能的基础是C++对继承的支持对虚拟函数的支持,以及MFC实现的消息映射机制22 SQL SERVER2000介绍SQL( Structured Query Language,结构查询语言)是个功能强大的数据库语言。SQL通常使用于数据库的遥讯。ANS(美目国家标准学会)声称,SQL是关系数据库管理系统的标准话言。SQL语句通常用于完成一些数据库的操作任务,比如在数据庠中更新数据,或者从数据库中检索薮据。使用SQL的常见关系数据库管理系统有: Oracle、 Sybase、 Microsoft SQL Server、 Access, Ingres等等吊然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如" Select"、" Insert"、" Update"Delete"、" Create"和"Drop"常常被用于完成绝大多数数据库的操作但是,不像其它的语言,如C、 Pascal等,SOL没有循环结构(比如 if-then-lse、do- while以及函数定义等等的功能。而且SQL只有一个数据类型的固定设置,换句话说,你不能在使用其它编程语言的时候创建你自己的数据类型。SL功能强人,但是概括起来,它可以分成以下几组◆DML( Data Manipulation Language,数据操作语言):用于检索或者修改数据◆DDL( Data Definition Language,数据定义语言):用于定义数据的结构,比如创建、修改或者删除数据库对象;◆DCI.( Data Control Language,数据控制语言):用于定义数据库用户的杈限DML组可以细分为以下的几个语句:◆ SELECT:用于检索数据。◆ INSERT:用于增加数据到数据库。◆ UPDATE:用于从数据库中修改现存的数据。◆ DELETE:用于从数据库中删除数据23ODBC介绍ODBC( Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(WOSA, Windows Open Services Architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对薮据庳访问的标准API(应用程序编程接口)。这些AP利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打父道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是 FoxPro、Aes, MYSQL还是Oracle数据库,均可用 ODBC AP进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。一个完整的ODBC由下列几个部件组成:应用程序( Application)ODBC管理器( Administrator),该程序位于 Windows95控制面板( Control Panel)的32位ODBC内,其主要任务是管理安装的ODBC驱动程序和管理数据源。驱动程序管理器 Driver Manager)。驱动程序管理器包含在ODBC32DLL中,对用户是透明的。其任务是管理ODBC驱动程序,是ODBC中最重要的部件数据源。数据源包含∫数据库位置和数据库类型等信息,实际上是一种数据逹接的抽象。应用程序要汸问一个数据库,首先必须用ODBC管理器注册一个数据源,管理器根据数据源提供的数据厍位置、数据厍类型及ODBC驱动程序笭信息,建立起ODBC与貝体数据库的联系.这样,只要应用程序将数据源名提供给ODBC,ODBC就能建立起与相应数据库的连接。在ODBC中, ODBC API不能直接访问数据库,必须通过驱动稈序管理器与数据库交换信息。驱动程序管理器负责将应月程序对 ODBC API的调用传递给正确的驱动程序,而驱动程序在执行完相应的操作后,将结果通过驱动程序管理器返回给应用程序。在访问ODBC数据源时需要ODBC驱动程序的支持,用 Visual++6.0安装程序可以安装SQLServer、 Access、 Paradox、 dBase、 FoxPro、 Excel、 Oracle和 Microsoft Text等驱动程序.在缺省情况下,VC6.0只会安装 SQL Server、 Access、 FoxPro和d Base的驱动程序.如果用户需要安装别的驱动程序,则需要重新运行VC6.0的安装程序并选择所需的驱动程序。ODBC使用层次的方法来管理数据厍,在数据库通信结构的每一层,对可能出现依赖数据库产品自身特性的地方,ODBC都引入一个公共接口以解决潜在的不一致性,从而很好地解决了基于数据库系统应用程序的相对独立性,这也是ODBC一绎推出就获得巨大成功的重要原因之一。24 CRecordSet类和 CRecord View类CRecordset对象代表从一个数据源选择的一组记录的集合,被称作“记录集”。CRecordset对象可以以两种形式使用:动态集和快照。动态集是与其它用户的数据更新保持同步的动态数据集。快照是数据的静态视图。每一种形式都代表打开记录集吋定的组记录,但是当滚动到动态集中的个记录时,动态集将反怏后来由其它用户或由应用程序巾其它记录集对此记录所做的改变。要使用任何一种记录集,通常需要从 CRecordset派生一个应用程序指定的记录集类。记录集从一个数据源中选择记录,然后用户就可以◆在这些记录中滚动更新记录并指定一种加锁模式。过滤记录集,以获得那些从数据源中选择出来的可利用的记录排序记录集。◆参数化该记录集以定制它的具有要直到运行时才知道的信息的选项。CRecord view对象是在控件中显小数据库记录的视这种视是一种直接连接到一个〔 Recordset对象上的格式视。此视是从一个对话框模板资源创建的,并将CRecordSet对象的字段显示在对话框模板的控件中。 CRecordview对象利用对话框数据交换(DDX)和记录字段交换(RFX)机制,使格式上的控件和记录集的
- 2020-12-01下载
- 积分:1