您好,欢迎访问三七文档
课程设计课程名称单片机原理及应用课题名称频率计数器专业测控技术与仪器班级2013学号201301200123姓名刘潇指导老师寻大勇2016年3月11日等级:电气信息学院课程设计任务书课题名称频率计数器姓名刘潇专业测控技术与仪器班级1301学号23指导老师寻大勇课程设计时间2016年2月29日-2016年3月11日教研室意见意见:审核人:一、任务及要求设计任务:本课题以单片机为核心,设计和制作一个频率计数器,来完成对输入的信号进行频率计数,计数的频率结果能够显示出来。要求能够对0-250KHz的信号频率进行准确计数,计数误差不超过±1HZ。设计要求:(1)确定系统设计方案;(2)进行系统的硬件设计;(3)完成应用程序设计;(4)应用系统的硬件和软件的调试。二、进度安排第一周:周一:集中布置课程设计任务和相关事宜,查资料确定系统总体方案。周二~周三:完成硬件设计和电路连接周四~周日:完成软件设计第二周:周一~周三:程序调试周四~周五:设计报告撰写。周五进行答辩和设计结果检查。三、参考资料1、王迎旭等.单片机原理及及应用.2版.机械工业出版社,20122、胡汉才.单片机原理及其接口技术.3版.清华大学出版社,2010.3、戴灿金.51单片机及其C语言程序设计开发实例.清华大学出版社,20101目录第1章设计任务及要求..............................................................................................11.1设计内容...........................................................................................................11.2设计要求.................................................................................................................11.3设计目的...........................................................................................................1第2章系统方案设计..........................................................................................................22.1频率计数器的基本原理.........................................................................................22.2设计总体思路.........................................................................................................2第3章系统硬件电路设计..........................................................................................33.1主要控制模块.........................................................................................................33.2频率输入端设计....................................................................................................43.3数码管显示电路......................................................................................................4第4章软件部分设计..................................................................................................6第5章系统的仿真与调试..................................................................................................7总结与体会............................................................................................................................8参考文献........................................................................................................................9附录A系统原理图......................................................................................................10附录B程序清单..........................................................................................................111第1章设计任务及要求1.1设计内容以单片机为核心,设计和制作一个频率计数器,来完成对输入的信号进行频率计数,计数的频率结果通过6位动态数码管显示出来。要求能够对0-250KHZ的信号频率进行准确计数,计数误差不超过±1HZ。1.2设计要求(1)设计方案要合理、正确;(2)完成必要元器件选择;(3)系统软件设计及调试;(4)写出设计报告。1.3设计目的(1)了解定时、计数器的结构及其工作原理;(2)掌握单片机的定时、计数器的控制方式;(3)掌握应用单片机进行频率测试控制的原理;(4)能根据设计任务要求编制数显频率计数器的程序,理解程序对计数器的控制原理;(5)会利用电路仿真软件绘制数显频率计数器的电路原理图;(6)会用KeilC51软件对源程序进行编译调试及与Proteus软件联调,实现电路仿真。2频率发生器频率计数功能的设计显示功能设计程序设计硬件设计仿真结果第2章系统方案设计2.1频率计数器的基本原理以被测信号整形后的方波脉冲作为控制闸门信号,采用单片机内部的定时器计数器进行计数。方脉冲的上升沿到达,定时器计数器开始从零启动计数,每一机器周期,计数器加1,直到方波脉冲的下降沿到达,计数器则停止计数,此时,计数器内存储的是脉宽的机器周期数的2倍。由于单片机内部振荡频率很高,故允许有一个机器周期的量化误差。2.2设计总体思路在设计频率计数器前,需要先设计一个简单的输入信号发生器,在本课题我们选择设计一个简易的方波发生器,频率可以自行调整。频率计数器的设计包括频率计数和显示电路的的设计,频率计数需包含复位,译码功能,显示电路的功能要求能通过6位动态数码管将计数频率的结果显示出来。频率计数器的设计需先利用相应的编程软件设计出程序,编译通过后在利用仿真软件仿真出正确的结果。总设计框图如下:图(1)频率计数器总设计框图3第3章系统硬件电路设计3.1主要控制模块在本课题中使用的是AT89C51单片机。一般的OTP产品,一旦错误编程就成了废品,而ATMEL公司89系列单片机内部采用了Flash存储器,所以,错误编程之后仍可以重新编程,直到正确为止。其次是它可反复进行系统试验。用89系列单片机设计的系统,可以反复进行系统试验,每次试验可以编入不同的程序,这样就可以保证用户的系统设计达到最优,而且还可以随用户的需要和发展进行修改,使系统能不断追随用户的最新要求。本次课程设计我选择AT89C51单片机。AT89C51是一种带4K字节闪烁可编程可擦除只读存储器的低电压,高性能CMOS8位微处理器,俗称单片机。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,1.主要特性:与MCS-51兼容;4K字节可编程FLASH存储器;寿命:1000写/擦循环;数据保留时间:10年;全静态工作:0Hz-24MHz;三级程序存储器锁定;128×8位内部RAM;32可编程I/O线;两个16位定时器/计数器;5个中断源;可编程串行通道;低功耗的闲置和掉电模式;片内振荡器和时钟电路。2.振荡器特性:XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。3.芯片擦除:整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。4图(2)AT89C51引脚分布3.2频率输入端设计图(3)频率发生器3.3数码管显示电路设计首先介绍一下显示器的显示接口,按驱动方式分为静态显示和动态显示两种显示方式。对于多为显示器,通常都是采用动态显示,既逐个地循环地点亮各位显示器。这样虽然在任一时刻只有一位显示器被点亮,但是由于人眼具有视觉残留效应,看起来与全部点亮效果一样。为了实现LED显示器的动态扫描,除了要给显示器提供段的输入之外,还有对显示器选择位的控制,这就是通常说的段控和位控。因此,多位LED显示器接口电路需要有两个输出口,其中一个用于8条段控线;另一个用于输出位控线,位控线的数目等于显示器的数目。数码管动态显示接口是单片机中应用最为广泛的一种显示方式之一,动态驱动是将所有数码管的8个显示笔划a,b,c,d,e,f,g,dp的同名端连在一起,另外为每个数码管的公共极COM增加位选通控制电路,位选通由各自独立的I/O线控制,当单片机5输出字形码时,所有数码管都接收到相同的字形码,但究竟是那个数码管会显示出字形,取决于单片机对位选通COM端电路的控制,所以我们只要将需要显示的数码管的选通控制打开,该位就显示出字形,没有选通的数码管就不会亮。通过分时轮流控制各个数码管的的COM端,就使各个数码管轮流受控显示,这就是动态驱动。在轮流显示过程中,每位数码管的点亮时间为1~2ms,由于人的视觉暂留现象及发光二极管的余辉效应,尽管实际上各位数码管并非同时点亮,但只要扫描的速度足够快,给人的印象就是一组稳定的显示数据,不会有闪烁感,动态显示的效果和静态显示是一样的,能够节省大量的I/O端口,而且功耗更低。如下图所示:AT89C51的P0-P0.6分别连接数码管的A-G引脚,P0.7连接DP端,低电平有效。P1.0-P1.2输出数码管的位码,控制6个数码管,高电平有效。由于由P0口输出的是二进制码,故要使用译码器74LS138进行译码,产生6个输出端,控制6个数码管的状态。图(4)数码管显示电路6第4章软件部分设计在计数器工作方式下,加至外部引脚的待测信号发生从1到0的跳变时计数器加1。外部输入在每个机器周期被采样一次,这样检测一次从1到0的跳变至少需要2个机器周期(24个振荡周期),所以最大计数速率为时钟频率的1/24(使用12MHz时钟,最大计数速率为500kHz),也就是说,使用12MHz时钟的AT89
本文标题:频率计数器
链接地址:https://www.777doc.com/doc-6916773 .html