ImageVerifierCode 换一换
格式:DOCX , 页数:15 ,大小:703.68KB ,
资源ID:12408448      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/12408448.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(单片机课程设计论文频率计.docx)为本站会员(b****4)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

单片机课程设计论文频率计.docx

1、单片机课程设计论文频率计目录1 设计目的及要求 22 方案比较与论证 23总体系统设计 33.1.系统结构框图 43.2 单片机模块 43.2.1晶振模块 43.2.2复位模块 43.2.3电源模块 53.3数码管显示模块 53.4程序设计模块 64系统的组装 64.1 PCB板图 64.2 面板图及部件说明 65系统调试 65.1 硬件电路的测试方法 65.2 软件的测试方法 66设计心得体会 7参考文献 7附录 8附录1 总原理图 8附录2 测试仪器 91设计目的及要求本次课程设计目的是为了加深对单片机内部寄存器的理解,熟练掌握定时计数器的使用,熟练使用数码管显示数字,并学会制作PCB板。

2、要求:(1)控制模块选用AT89S51单片机,完成51单片机最小应用系统的设计;(2)测频范围:50HZ50KHZ;(3)完成数码管驱动电路的设计,数码管显示测得信号频率值。2方案比较与论证方案一:定时法 此法将定时计数器构成为定时器,频率计则使用定时方法测量待测信号的周期。定时计数器在判断待测信号的下降沿到来后,启动定时器,以单片机工作周期为单位进行计数,直至信号的下一个下跳沿到来,定时器停止,停止计数。16位定时计数器的最高计数值为65 535,当待测信号的频率较低时,定时计数器将发生溢出。产生溢出时,程序进入定时器中断服务程序,对溢出次数进行计数。此时待测信号的周期由3个部分组成:定时计

3、数器溢出次数、定时计数器的高8位和低8位。信号的频率f与信号的周期T之间的关系为:f1T完成信号的周期测量后,需要做一次倒数运算才能获得信号的频率。再将信号频率值变换成本频率计的显示格式,送到显示模块显示待测信号的频率值。完成显示后,频率计都开始下一次信号的频率测量。方案二:计数法此法将定时计数器构成为计数器。计数法是在一定时间内将被测信号加到计数器进行计数的方法,如果设定的时间为T,计数器得到的计数值为N1,则被测频率为f=N1/T。改变时间T,则可改变测量频率范围。如图2-1所示。 图2-1而在定时T期间,计数器的精确计数值N与测量值N1之间存在一定的误差,通过分析,信号频率越高,误差越小

4、;而信号频率越低,则测量误差越大。因此测频法适合用于对高频信号的测量,频率越高,测量精度也越高。 由于要求测量频率范围为50HZ50KHZ,因此选用方案二,可以较好的达到效果。将单片机内部定时计数器T0设置为定时器并定时1s,将单片机内部定时计数器T1设置为计数器,以机器周期(1us)为基准(12M晶振),由软件产生计数定时时间1 s,将计数值显示出来即为待测信号的频率。3总体系统设计3.1.系统结构框图 控制单元AT89S51数码管显示 外部信号数码管驱动3.2 单片机模块3.2.1晶振模块晶振为单片机提供时钟信号,CPU总是按照一定的时钟节拍与时序工作,可以通过提高时钟频率来提高CPU的工

5、作速度,此系统使用12M晶振。电容C1、C2的取值范围为15pF-45pF之间,他们能起到起振和微调震荡频率的作用。3.2.2复位模块CPU在启动运行时都需要复位,使CPU和其他部件都置为一个特定的初始状态。而AT89S51单片机可以有上电复位和手动复位,此设计可同时实现两种复位方式。此单片机需要一个正脉冲(宽度2个机器周期)才能是单片机复位,由于振荡器频率为12M,则复位的电容的典型值为1uF。3.2.3电源模块此单片机的供电电压为5V,通过ISP下载线供电,亦可通过直流5V供电。此次设计在电源处加入一个滤波电容和一个电解电容,可以是电源电压更加稳定,从而使单片机更加稳定的工作。3.3数码管

6、显示模块数码管动态显示原理:将位选信号送至12、9、8、6;段选信号送至11 、7、2、1 、10、 5 、3。段码虽同时到达 4个LED,但一次仅一个LED被选中。利用“视觉暂留”,每送一个字符并选中相应位线,延时一会儿,再送/选下一个循环扫描即可。3.4程序设计模块开 始 计数器1 清零 启动定时计数器 计数器0赋初值进中断 定时 1s 读出计数器1显示值 结束4系统的组装4.1 PCB板图主要是运用了Protel软件进行原理图,pcb图的绘制,完成以后进过一系列的加工制作形成完整的PCB板。在元件的焊接过程之中,注意元件的方向性和焊接的可靠性。4.2 面板图及部件说明 虽然制作了PCB图

7、,但这是分模块设计的,因此需要用排线把各个部分连接起来,制作硬件时一定要把各部分接口在电路板上标注出来,特别是电路中有许多个接口时更应该标注一下(如电源正负极,I/O口等),标注以后方便电路检查及插线,从而大大的节约了时间,同时也使电路清楚明了。此设计使用了5位共阳数码管显示频率的大小。5系统调试5.1 硬件电路的测试方法 对于电子电路的调试方法,首先是分模块调试,把各个模块都调试好了以后,将各模块连接起来进行联调,在调试过程中一定要仔细,还要有足够的耐心。5.2 软件的测试方法 本次课设需要用到keil c51编写软件、progisp下载软件。学会keil c51及progisp的使用,软件

8、调试和硬件调试有很多共同之处。首先写一段程序测试数码管,并测试数码管的编码表,其次设置定时计数器,用示波器调试定时时间(此处需要定时50ms进一次中断,需中断20次,完成1s定时,而程序中通过进一次中断输出电平取反用来测试,此时输出占空比为50%频率为10HZ的方波,同时此信号也可以做为输入信号接入计数器用做测试信号)。6设计心得体会 在这次课程设计中,先把每个模块设计出来,要考虑到设计的每个细节及要求,一步一步地修改,完成pcb图的设计。接下来是焊接电路,调试电路,调试软件实现功能,这里需要仔细加耐心才能完成。同时,在整个过程之中学会了提出问题、分析问题、解决问题的方法,会对以后的学习带来极

9、大的帮助。回顾起此次课程设计,至今我仍感慨颇多,从理论到实践,在整整两个星期的时间里,我学到很多很多的东西,不仅巩固了以前所学过的知识,而且学到了很多在书本上所没有学到过的内容。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才是真正的知识,才能提高自己的实际动手能力和独立思考的能力。在设计的过程遇到了各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固,通过这次课程设计,把以前所学过的知识重新温故,巩固了所学的知识。参考文献1康光华等,电子技术基础(模拟

10、部分)M,高等教育出版社,6年1月第5版2张友德、赵志英、凃时亮,单片微型机原理、运用与实践,复旦大学出版社,6年10月第5版附录附录1 总原理图单片机模块数码管模块附录2 测试仪器1. 5V电源2. 万用表3. 信号发生器 附录3 实物图片 附录4 程序设计及代码 #includeunsigned int counter,count;unsigned char code duanma=0xc0,0xf9,0xa4,0xb0,0x99,0x92,0x82,0xf8,0x80,0x90; /0,1,2,3,4,5,6,7,8,9,.void delay(unsigned int i);void

11、display(unsigned char wan,unsigned char qian,unsigned char bai,unsigned char shi,unsigned char ge);sbit fre=P11;void main() unsigned char wan,qian,bai,shi,ge; TMOD=0x51; / 0101 0001 T1:负脉冲计数 工作方式1 /T0:定时工作方式1 TH0=0x3C; /3CB0H=15536 TL0=0xB0; /M=12MHZ;1机器周期=1us (65536-15536) /*1us=50ms 定时50ms*20=1s T

12、H1=0x00; TL1=0X00; / EA=1; ET0=1; TR0=1; ET1=1; TR1=1; fre=1; while(1) wan=count/10000; qian=count/1000%10; bai=count/100%10; shi=count/10%10; ge=count%10; display(wan,qian,bai,shi,ge); void timer()interrupt 1 fre=fre; counter+; if(counter=20) count=TH1*256+TL1; TH0=0x3C; TL0=0xB0;void display(unsig

13、ned char wan,unsigned char qian,unsigned char bai,unsigned char shi,unsigned char ge) P2=0x01; P0=duanmage; delay(300); P2=0x02; P0=duanmashi; delay(300); P2=0x04; P0=duanmabai; delay(500); P2=0x08; P0=duanmaqian; delay(500); P2=0x10; P0=duanmawan; delay(500);void delay(unsigned int i) unsigned int a; for(a=i;a0;a-);

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1