《等精度测频法的频率计设计大学论文.doc》由会员分享,可在线阅读,更多相关《等精度测频法的频率计设计大学论文.doc(62页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、摘要摘 要 频率测量是电子学测量中最为基本的测量之一。频率计主要是由信号输入和放大电路、单片机模块、分频模块及显示电路模块组成。AT89C52单片机是频率计的控制核心,来完成它待测信号的计数,译码,显示以及对分频比的控制。利用它内部的定时/计数器完成待测信号频率的测量。在整个设计过程中,所制作的频率计采用外部分频,实现1Hz-1kHz的频率测量及1ms-100ms的脉宽测量,而且可以实现量程自动切换流程。以AT89C52单片机为核心,通过单片机内部定时/计数器的门控时间,方便对频率计的测量。其待测频率值使用LCD液晶显示器显示,并可以自动切换量程。本次采用单片机技术设计一种数字显示的频率计,具
2、有测量准确度高,响应速度快,体积小等优点。关键词:频率计,单片机,LCD液晶显示器。IIIABSTRACTABSTRACTFrequency measurement is one of the most basic measurement electronics measurement. Frequency counter is dominated by the signal input and the amplifier circuit, microcontroller module, frequency module and the display circuit module. AT89
3、C52 microcontroller is to control the core frequency meter to complete its measured signal counting, decoding, display and control divider ratio. Use its internal timer / counter to complete the test signal frequency measurements. Throughout the design process, by making use of external parts of the
4、 frequency meter frequency to achieve frequency measurement and pulse width measurement 1ms-100ms of 1Hz-1kHz, and can realize automatic range switching processes. To AT89C52 microcontroller as the core, through the internal microcontroller timer / counter gate time, easy measurement of the frequenc
5、y meter. Its measured frequency value using the LCD display, and can automatically switch range. The use of microcomputer technology to design a digital display of frequency meter, have a measurement of high accuracy, fast response, small size and so on.KEYWORDS: Frequency meter, Single chip, LCD di
6、splay.目录目 录1 绪 论11.1 数字频率计简介11.2 单片机系统的研究现状21.3 频率计的研究现状21.4设计的技术要求和主要内容32 等精度频率计的原理与应用52.1 等精度频率计测量的原理52.2 脉冲宽度的测量方法62.3 等精度频率计的误差分析62.4 本章小结83 硬件电路设计93.1单片机周边电路93.2 51单片机及AT89C52介绍93.2.1 单片机简介93.2.2 AT89C52简介103.2.3 管脚说明113.2.4 AT89C52主要性能133.3 各部分电路图及电路工作原理分析133.3.1 时钟脉冲电路133.3.2 同步门逻辑控制电路143.3.3
7、 LCD显示电路153.3.4 复位电路174 软件设计194.1 KEIL51软件简介194.2 软件的模块化设计及各部说明194.2.1 定时中断模块194.2.2 测量模块204.2.3 显示模块204.2.4 软件流程图205 系统仿真与调试215.1 Proteus软件简介215.2 Proteus的电路仿真225.3误差分析24总 结27致 谢29参考文献31附 录331 程序332 附图413 外文翻译44V绪论1 绪 论1.1 数字频率计简介数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字,显示被测信号频率的数字测量仪器。它的基本功能
8、是测量正弦信号,方波信号以及其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计安装、调试过程中,由于其使用十进制数显示,测量迅速,精度高,显示直观,所以经常要用到数字频率计。 若在一定时间间隔T内测得这个周期性信号的重复变化次数N,则其频率可表示为f=N/T。其中脉冲形成电路的作用是将被测信号变成脉冲信号,其重复频率等于被测频率fx。时间基准信号发生器提供标准的时间脉冲信号,若其周期为1s,则门控电路的输出信号持续时间亦准确地等于1s。闸门电路由标准秒信号进行控制,当秒信号来到时,闸门开通,被测脉冲信号通过闸门送到计数译码显示电路。秒信号结束时闸门关闭,计数器停止计数。由于计数器计得的
9、脉冲数N是在1秒时间内的累计数,所以被测频率fx=NHz。本设计详细介绍了该系统的原理与构成,并以AT89C52和LCD显示电路为核心设计了系统 硬件电路。硬件电路中,正是基于以上思想,以AT89C52单片机为核心,通过单片 机内部定时/计数器的门控时间,方便对频率计的测量。在整个设计过程中,所制作的频率计采用外部分频,实现1Hz1KHz的频率测量及1ms-100ms的脉宽测量, 而且可以实现量程自动切换流程。其待测频率值使用LCD液晶显示器 显示,并可以自动切换量程。本次采用单片机技术设计一种数字显示 的频率计,具有测量准确度高,响应速度快,体积小等优点。单片微机完成对计数数据进行运算处理功
10、能。通过相关资料运用proteus软件设计相应的等精度频率计电路原理图以及显示电路原理图。在软件设计中,在Keil51软件平台下编写了应用程序,采用模块化编程,使得所编程序具有可读性强,易于调试、修改方便的特点。论文中提到具体方案是将基于单片机控制的等精度频率计中的电路部分包括电源,74HC74触发器,显示电路等几部分。以AT89C52为核心,接复位电路和晶体振荡器,与74HC74触发器相连,分别用于对标准频率脉冲和被测频率脉冲进行计数。标准频率信号由单片机AT89C52的石英晶体振荡器产生。本设计在深入讨论等精度频率测量原理的基础上设计出相应的由单片机控制的的等精度测量装置,运用了Prote
11、us,KEIL51对电路的软硬件部分进行了设计。1.2 单片机系统的研究现状在我国,单片机的推广、普及、开发应用已经经过十多个年头,在此期间也涌现出了不少单片机的专家和技术成果,使我国在单片机技术应用方面获得了长足的进步。由于我国单片机发展起步晚,尽管单片机的品种很多,但是在我国使用较为广泛的是Intel公司的MCS-51单片机系列。近年来32位单片机已进入实用阶段。也向多功能、高性能、高速度、低电压、低功耗、低价格、外围电路内装化及片内存储容量增加的方向发展。1.3 频率计的研究现状 频率测量是电子学测量中最为基本的测量之一。由于频率信号抗干扰性强,易于传输,因此可以获得较高的测量精度。随着
12、数字电子技术的发展,频率测量成为一项越来越普遍的工作,测频原理和测频方法的研究正受到越来越多的关注。 数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号、方波信号及其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计、安装、调试过程中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计。传统的频率计采用测频法测量频率,通常由组合电路和时序电路等大量的硬件电路组成,产品不但体积大,运行速度慢而且测量低频信号不准确。本次采用单片机技术设计一种数字显示的频率计,测量准确度高,
13、响应速度快,体积小等优点。国际国内通用数字频率计的主要技术参数:1频率测量范围:电子计数器的测频范围,低端大部分从10Hz开始;高端则以不同型号的频率计而异。因此高端频率是确定低、中、高速计数器的依据。如果装配相应型号的变频器,各种类型的数字频率计的测量上限频率,可扩展十倍甚至几十倍。2周期测量范围:数字频率计最大的测量周期,一般为10s,可测周期的最小时间,依不同类型的频率计而定。对于低速通用计数器最小时间为1ys;对中速通用计数器可小到0.1ys。3晶体振荡器的频率稳定度:是决定频率计测量误差的一个重要指标。可用频率准确度、日波动、时基稳定度、秒级频率稳定度等指标,来描述晶体振荡器的性能。
14、4输入灵敏度:输入灵敏度是指在侧频范围内能保证正常工作的最小输入电压。目前通用计数器一般都设计二个输入通道,即d通道和月通道。对于4通道来说,灵敏度大多为50mV。灵敏度高的数字频率计可达30mV、20mV。5.输入阻抗:输入阻抗由输入电阻和输入电容两部分组成。输入阻抗可分为高阻(1M25PF、500k30PF)和低阻(50)。一般说来,低速通用计数器应设计成高阻输入;中速通用计数器,测频范围最高端低于100MHz,仍设计为高阻输入;对于高速通用计数器,测频100MHz, 设计成低阻 (50Q) 输入,测频100MHz,设计成高阻(500k30PF)输入。1.4设计的技术要求和主要内容 论文研
15、究设计了一套基于AT89C52单片机技术的等精度频率计,由标准频率信号和被测信号进行校准,实现等精度频率的测量。设计要求: 频率测量 幅度:0.5V5V 频率测量范围:1Hz1kHz脉宽测量范围:1ms100ms频率测量精度:1Hz,脉宽测量精度:0.1ms测量误差0.5%测量方法:等精度主要内容如下: (1)学习理解单片机的原理及应用,掌握单片机的编程; (2)了解等精度的频率测量的工作原理; (3)proteus上进行画图; (4)编写软件; (5)系统调试,仿真3等精度频率计的原理与应用2 等精度频率计的原理与应用2.1 等精度频率计测量的原理 频率计的核心为单片机对数据的运算处理,而此
16、等精度测量方法是以同步门逻辑控制电路为核心的。同步门逻辑控制电路由D触发器构,D触发器的作用主要是用来同步脉冲信号。等精度的测量原理是利用对被测信号和标频信号同时计数所经过的时间相同来讲计算被测信号的频率。等精度测量原理如图2-1所示。 图2-1 等精度测量原理图5等精度频率计的原理与应用测量开始时,由被测信号的上升沿同时打开预置门和同步门启动两个计时器同时对被测频率信号和标准频率信号同时开始计数。到达预置时间TS后,预置门关闭,但两个计数器不停止计数,随后而至的被测信号的上升沿到来时,同步门关闭,两个计数器才同时停止计数。测得的计数值分别为N1,N2.输入到单片机里进行运算处理,由显示电路显
17、示运算结果。 由测量原理可以知道: (1) 由此可以推出: (2)2.2 脉冲宽度的测量方法利用定时器的门控信号GATE进行控制可以实现脉冲宽度的测量。对定时器T1来讲,如果GATE=0,必须使软件控制位TR1=1,且INT1为高电平方可启动定时器T1,即定时器T1的启动要受外部中断请求信号INT1的影响。利用此特点,被测脉冲信号从INT1端引入,其上升沿启动T1计数,下降沿停止T1计数。定时器的计数值乘以机器周期即为脉冲宽度。图2-2中给出了脉冲宽度测量的原理图。 图2-2 脉冲宽度测量原理图2.3 等精度频率计的误差分析 设所测频率的准确值为fX。在一次测量中,由于f1计数的起停时间是由该
18、信号的上升沿控制的,因此,在TS时间内对f1的计数N1无误差。在此时间内f2的计数N2最多相差一个脉冲,即N11,则下式成立: (3)由此可分别推得: (4)根据相对误差公式有: (5)将式(2)和式(4)代人式(5)整理后可得: (6)因为 : 所以 : (7)即相对误差: (8)其中: (9)由上式可以得出结论:(1)相对误差与被测信号频率无关;(2)增大或提高,可以增大,从而减小测量误差,提高测量精度;(3)测量精度与预置门宽度和标准频率有关,与被测信号频率无关;(4)标准频率误差为,由于石英晶体的频率稳定度很高,标准频率误差很小。在系统时钟频率:, =. 由式(9)可以计算出不同时的相
19、对误差如图表2-1所示。表2-1等精度频率计的相对误差:同步门时间TS(s)相对误差0.011040.11051106101072.4 本章小结 本章就等精度频率计原理进行了简单的阐述,主要介绍了等精度频率计所用到的元器件及相关知识,和等精度频率计的计量原理。以及对脉冲宽度测量方法的讲解并对频率计的误差进行了分析。19硬件电路设计3 硬件电路设计3.1单片机周边电路 在设计电路的过程中,涉及整体电路设计时,倘若能将整体电路分割为几部分别设计,就会使思路变得清晰,效率会大大提高。本系统被分为:同步门逻辑控制电路、AT89C52、时钟脉冲电路、显示电路。在本系统中,等精度测量硬件电路需要一个标准频
20、率信号。选择了单片机添加的晶振电路来产生。需要的启计信号和清零信号由单片机AT89C52来产生。具体电路设计如图3-1所示。图3-1 单片机周边电路3.2 51单片机及AT89C52介绍3.2.1 单片机简介 51单片机是对所有兼容Intel 8031指令系统的单片机的统称。该系列单片机的始祖是Intel的8031单片机,后来随着Flash rom技术的发展,8031单片机取得了长足的进展,成为应用最广泛的8位单片机之一,其代表型号是ATMEL公司的AT89系列,它广泛应用于工业测控系统之中。很多公司都有51系列的兼容机型推出,今后很长的一段时间内将占有大量市场。51单片机是基础入门的一个单片
21、机,还是应用最广泛的一种。需要注意的是52系列的单片机一般不具备自编程能力。当前常用的51系列单片机主要产品有: Intel的:80C31、80C51、87C51,80C32、80C52、87C52等; ATMEL的:89C51、89C52、89C2051等; Philips、华邦、Dallas、Siemens(Infineon)等公司的许多产品 国产宏晶STC单片机以其低功耗、廉价、稳定性能,占据着国内51单片机较大市场。 8位CPU4kbytes程序存储器(ROM) (52为8K) 128bytes的数据存储器(RAM) (52有256bytes的RAM) 32条I/O口线111条指令,大
22、部分为单字节指令 21个专用寄存器 2个可编程定时/计数器5个中断源,2个优先级(52有6个) 一个全双工串行通信口 外部数据存储器寻址空间为64kB 外部程序存储器寻址空间为64kB 逻辑操作位寻址功能双列直插40PinDIP封装 单一+5V电源供电 CPU:由运算和控制逻辑组成,同时还包括中断系统和部分外部特殊功能寄存器; RAM:用以存放可以读写的数据,如运算的中间结果、最终结果以及欲显示的数据; ROM:用以存放程序、一些原始数据和表格; I/O口:四个8位并行I/O口,既可用作输入,也可用作输出; T/C:两个定时/记数器,既可以工作在定时模式,也可以工作在记数模式; 五个中断源的中
23、断控制系统; 一个全双工UART(通用异步接收发送器)的串行I/O口,用于实现单片机之间或单片机与微机之间的串行通信; 片内振荡器和时钟产生电路,石英晶体和微调电容需要外接。最高振荡频率为12M。3.2.2 AT89C52简介 AT89C52是51系列单片机的一个型号,它是ATMEL公司生产的。AT89C52是一个低电压,高性能CMOS 8位单片机,片内含8k bytes的可反复擦写的Flash只读程序存储器和256 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,功能强
24、大的AT89C52单片机可为您提供许多较复杂系统控制应用场合。AT89C52有40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,3个16位可编程定时计数器,2个全双工串行通信口,2个读写口线,AT89C52可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flash存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。AT89C52有PDIP、PQFP/TQFP及PLCC等三种封装形式,以适应不同产品的需求。3.2.3 管脚说明AT89C52管脚图如图3-2所示:图3-2 AT89C52管脚图 VCC:供电电压。 GND:接地。 P0口:
25、P0 口是一组8 位漏极开路型双向I/O 口, 也即地址/数据总线复用口。作为输出口用时,每位能吸收电流的方式驱动8 个TTL逻辑门电路,对端口P0 写“1”时,可作为高阻抗输入端用。在访问外部数据存储器或程序存储器时,这组口线分时转换地址(低8 位)和数据总线复用,在访问期间激活内部上拉电阻。在Flash编程时,P0 口接收指令字节,而在程序校验时,输出指令字节,校验时,要求外接上拉电阻。 P1口:P1 是一个带内部上拉电阻的8 位双向I/O 口, P1 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。作输入口
26、使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。与AT89C51 不同之处是,P1.0 和P1.1 还可分别作为定时/计数器2 的外部计数输入(P1.0/T2)和输入(P1.1/T2EX), P2口:P2 是一个带有内部上拉电阻的8 位双向I/O 口,P2 的输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对端口P2 写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口,作输入口使用时,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出一个电流(IIL)。在访问外部程序存储器或16 位地址的外部数据存储器(例如执行MOVX DPTR 指令)
27、时,P2 口送出高8 位地址数据。在访问8 位地址的外部数据存储器(如执行MOVX RI 指令)时,P2 口输出P2锁存器的内容。Flash编程或校验时,P2亦接收高位地址和一些控制信号。 P3口:P3 口是一组带有内部上拉电阻的8 位双向I/O 口。P3 口输出缓冲级可驱动(吸收或输出电流)4 个TTL 逻辑门电路。对P3 口写入“1”时,它们被内部上拉电阻拉高并可作为输入端口。此时,被外部拉低的P3 口将用上拉电阻输出电流(IIL)。P3 口除了作为一般的I/O 口线外,更重要的用途是它的第二功能P3 口还接收一些用于Flash闪速存储器编程和程序校验的控制信号。 RST:复位输入。当振荡
28、器工作时,RST引脚出现两个机器存储以上高电平将使单片机复位。 ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址存储允许)输出脉冲用于锁存地址的低8 位字节。一般情况下,ALE 仍以时钟振荡频率的1/6 输出固定的脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE 脉冲。对Flash存储器编程期间,该引脚还用于输入编程脉冲(PROG)。如有必要,可通过对特殊功能存储器(SFR)区中的8EH 单元的D0 位置位,可禁止ALE 操作。该位置位后,只有一条MOVX 和MOVC指令才能将ALE 激活。此外,该引脚会被微弱拉高,单片机执行
29、外部程序时,应设置ALE 禁止位无效。 PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89C52 由外部程序存储器取指令(或数据)时,每个机器存储两次PSEN 有效,即输出两个脉冲。在此期间,当访问外部数据存储器,将跳过两次PSEN信号。 EA/VPP:外部访问允许。欲使CPU 仅访问外部程序存储(地址为0000HFFFFH),EA 端必须保持低电平(接地)。需注意的是:如果加密位LB1 被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU 则执行内部程序存储中的指令。Flash存储编程时,该引脚加上+12V 的编程允许电源Vpp,当然这必须是
30、该器件是使用12V编程电压Vpp。 XTAL1:反向振荡放大器的输入及内部时钟工作电路的输入。XTAL2:来自反向振荡器的输出。3.2.4 AT89C52主要性能 1、兼容MCS51指令系统; 2、8kB可反复擦写(大于1000次)Flash ROM; 3、32个双向I/O口; 4、256x8bit内部RAM; 5、3个16位可编程定时/计数器中断; 6、时钟频率0-24MHz; 7、2个串行中断,可编程UART串行通道; 8、2个外部中断源,共8个中断源; 9、2个读写中断口线,3级加密位; 10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能; 11、有PDIP、PQFP、TQFP及PLCC
31、等几种封装形式,以适应不同产品的需求。3.3 各部分电路图及电路工作原理分析3.3.1 时钟脉冲电路时钟脉冲电路的主要作用是对外发出时序控制信号,在AT89C52芯片上,XTAL1和XTAL2分别为单片机内部振荡器的输入和输出端,其中,当与本试验线路相同时,即使用内部时钟方式时,XTAL1和XTAL2必须外接石英晶体和微调电容,其中电容C1、C2对振荡频率起稳定的作用,振荡频率应在1.2MHz12MHz。该反向放大器可以配置为片内振荡器。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽
32、度。产生的时钟信号送至单片机内部的各个部分,时钟频率越高,单片机控制器的节拍越快,运算速度也越快。时钟电路可以简单定义如下:1.就是产生象时钟一样准确的振荡电路;2.任何工作都按时间顺序。用于产生这个时间的电路就是时钟电路。时钟电路一般由晶体振荡器、晶震控制芯片和电容组成。时钟电路应用十分广泛,如电脑的时钟电路、电子表的时钟电路以及MP3MP4的时钟电路。如图3-3所示。 图3-3 时钟方式3.3.2 同步门逻辑控制电路 同步门逻辑控制电路由D触发器构成,由它来产生同步门信号Ts。在测试开始后,利用单片机的P3.4作为预置门信号Ts的输出线。当P3.7=1时,在被测信号的上升沿作用下D触发器的
33、输出Q=1,使得单片机的INT0和INT1同时为1,启动单片机内部的定时/计数器开始工作。其中,T0对被测信号的输出Q仍然为1,因此两个计数器并不停止计数,直到随后而至的待测信号的上升沿到来时,才使得D触发器的输出为0,同步门关闭,两个计数器才同时停止计数。如图3-4所示。图3-4 同步门逻辑控制电路3.3.3 LCD显示电路液晶模块简介:液晶显示模块因其微功耗、体积小、显示内容丰富、超薄轻巧、使用方便等诸多优点,在通讯、仪器仪表、电子设备、家用电器等低功耗应用系统中得到越来越广泛的应用。在工业控制中,显示器件向来是很重要的一环,随着科技的迅速发展,显示器件的种类也是越来越多,目前主流的显示器
34、件就是液晶显示器,液晶显示器简称LCD显示器,它是利用液晶经过处理后能够改变光线的传输方向的特性实现显示信息的,液晶显示模块具有体积小、功耗低、显示内容丰富超薄轻巧等优点,在单片机应用系统中得到日益广泛的应用。液晶显示器按其功能分为三类:笔端式液晶显示器、字符点阵式液晶显示器、图形点阵式液晶显示器。前两种能够显示数字、字符等,而图形点阵式液晶显示器还可以显示汉字和任意图形。字符型液晶是一种用5*7点阵图形来显示字符的液晶显示器,根据显示的容量可以分为1行16个字、2行16个字、2行20个字等,最常用的为2行16个字,LCD1602即是一款应用广泛的2行16个字的字符型液晶显示模块。首先介绍一下
35、LCD1602的外围引脚,从其外观着手把握它的电路接法以及控制功能使用:第1脚:VSS为地电源;第2脚:VDD接5V正电源;第3脚:V0 为液晶显示器对比度调整端,接正极电源时对比度最弱,接地电源时对比度最高,对比度过高时会产生“鬼影”,使用时可以通过一个10K的电位器调整对比度;第4脚:RS 为寄存器选择,高电平时选择数据寄存器,低电平时选择指令寄存器;第5脚:RW 为读写信号线,高电平时进行读操作,低电平时进行写操作。当RS和RW共同为低电平时可以写入指令或者显示地址,当RS为低电平,RW为高电平时可以读取忙信号,当RS为高电平RW为低电平时可以写入数据; 第6脚:E端为使能端,当E端由高
36、电平跳变成低电平时,液晶模块执行命令;第7-14脚: D0D7为8位双向数据线;第15-16脚:空脚8。本设计中液晶显示器的作用就是显示频率跟脉宽。液晶的数据口接单片机的P0口,P0口需接上拉电阻。电源接5V,控制信号也由单片机的P2.1/P2.2/ P2.3控制,在液晶上显示所测频率跟脉宽。本设计单片机与LCD1602液晶显示器的接口见图3-5。图3-5 LCD1602管脚图3.3.4 复位电路复位电路和时钟电路是维持单片机最小系统运行的基本模块。复位电路通常分为两种:上电复位和手动复位。有时系统在运行过程中出现程序跑飞的情况,在程序开发过程中, 经常需要手动复位,所以本次设计选用手动复位。
37、如图3-6。图3-6 复位电路软件设计4 软件设计4.1 KEIL51软件简介 Keil IDE(u Vision2)集成开发环境是Keil Software Inc/Keil Elektronik GmbH开发的基于MCS 8051内核的微处理器软件平台,内嵌多种符合当前工业标准的开发工具,可以完成从工程的建立和管理、编译、连接、目标代码的生成到软件仿真、硬件仿真等完整的开发流程。尤其是C语言编译工具在产生代码的准确性和效率方面达到了较高的水平,而且可以附加灵活的控制选项,在开发大型项目时是非常理想的工具。Keil 本身是一个纯软件工具,不能直接进行硬件仿真,必须挂接类似TKS系列仿真器的硬
38、件才可以进行仿真。4.2 软件的模块化设计及各部说明 一个程序在编程以前,功能的分析和总结非常重要。在此基础上进行自上而下的模块化划分,这样可以缩短程序的编制周期,而且维护方便。还可以做成数据和操作分离的面向对象的模式,这样更加增强了程序的灵活性。 通过对软件功能的分析,基于单片机控制测量的恒精度频率计可以用4个模块来实现,如图4-1所示,它们分别是:定时中断模块,计数模块,测量模块,显示模块。这些模块的具体功能如下:主程序定时中断模块计数模块测量模块显示模块图4-1软件模块图4.2.1 定时中断模块定时中断模块对预置门控制信号进行启动中断。在系统时钟频率f=12MHZ时,f0=f/12=1M
39、HZ。对被测信号和标准频率信号的测量的时间进行开启和关闭,对预置门信号定时中断。4.2.2 测量模块 对计数所得的数据进行测量计算。通过对被测信号和标准频率信号的周期测量,根据公式:f1/N1=f2/N2得到:f1= f2*N1/N2测得被测信号的实际频率。通过显示电路显示出来。4.2.3 显示模块 LCD显示器是利用液晶经过处理后能够改变光线的传输方向的特性实现显示信息的,液晶显示模块具有体积小、功耗低、显示内容丰富超薄轻巧等优点,在单片机应用系统中得到日益广泛的应用。液晶显示器按其功能分为三类:笔端式液晶显示器、字符点阵式液晶显示器、图形点阵式液晶显示器。4.2.4 软件流程图 系统软件的
40、设计主要是保证和硬件电路相结合,正确地实现等精度测量。整个系统软件的设计采用了自顶向下的模块化的结构方式,将各个功能分成独立模块,由系统的监控程序统一管理执行。系统的软件程序框图如图4-2所示:开始开中断初始化定时/计数器启动定时/计数器等待Gate变低计数停止数据处理计算显示等待Gate变高4-2软件程序框图系统仿真与调试 5 系统仿真与调试5.1 Proteus软件简介 Proteus软件是英国Labcenter electronics公司出版的EDA工具软件(该软件中国总代理为广州风标电子技术有限公司)。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。它是目前最好的仿真
41、单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Proteus是世界上著名的EDA工具(仿真软件),从原理图布图、代码调试到单片机与外围电路协同仿真,一键切换到PCB设计,真正实现了从概念到产品的完整设计。是目前世界上唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件合一的设计平台,其处理器模型支持8051、HC11、PIC10/12/16/18/24/30/DsPIC33、AVR、ARM、8086和MSP430等,2010年又增加了Cortex和DSP系列处理器,并持续增加其他系列处理器模型。在编译方面,它
42、也支持IAR、Keil和MPLAB等多种编译器。资源丰富: 1Proteus可提供的仿真元器件资源:仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。 2Proteus可提供的仿真仪表资源 :示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。理论上同一种仪器可以在一个电路中随意的调用。 3除了现实存在的仪器外,Proteus还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。这些都尽可能减少了仪器
43、对测量结果的影响。 4Proteus可提供的调试手段 Proteus提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。编辑本段电路仿真: 在PROTEUS绘制好原理图后,调入已编译好的目标代码文件:*.HEX,可以在PROTEUS的原理图中看到模拟的实物运行状态和过程。 PROTEUS 是单片机课堂教学的先进助手。 PROTEUS不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。 它的元器件、连接线路等却和传统的单片机实验硬件高度对应。这在相当程度上替代了传统的单片机实验
44、教学的功能,例:元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。 课程设计、毕业设计是学生走向就业的重要实践环节。由于PROTEUS提供了实验室无法相比的大量的元器件库,提供了修改电路设计的灵活性、提供了实验室在数量、质量上难以相比的虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神的平台 随着科技的发展,“计算机仿真技术”已成为许多设计部门重要的前期设计手段。它具有设计灵活,结果、过程的统一的特点。可使设计时间大为缩短、耗资大为减少,也可降低工程制造的风险。相信在单片机开发应用中PROTEUS也能茯得愈来愈广泛的应用。 使用Proteus 软件进行单片机系统仿真设计,是虚拟仿真技术和计算机多媒体技术相结合的综合运用,有利于培养学生的电路设计能力及仿真软件的操作能力;在单片机课程设计和全国大学生电子设计竞赛中,我们使用 Proteus 开发环境对学生进行培训,在不需要硬件投入的条件下,学生普遍反映,对单片机的学习比单纯学习书本知识更容易接受,更容易提高。实践证明,在使用 Proteus 进行系统仿真开发成功之