用单片机测量脉冲宽度和频率课设.doc

上传人:scccc 文档编号:11984414 上传时间:2021-11-30 格式:DOC 页数:20 大小:360KB
返回 下载 相关 举报
用单片机测量脉冲宽度和频率课设.doc_第1页
第1页 / 共20页
用单片机测量脉冲宽度和频率课设.doc_第2页
第2页 / 共20页
用单片机测量脉冲宽度和频率课设.doc_第3页
第3页 / 共20页
亲,该文档总共20页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《用单片机测量脉冲宽度和频率课设.doc》由会员分享,可在线阅读,更多相关《用单片机测量脉冲宽度和频率课设.doc(20页珍藏版)》请在三一文库上搜索。

1、摘要单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种。单片机 微型计算机简称单片机, 特别适用于控制领域, 故又称为微控制器。 单片机是 20 世纪中 期发展起来的一种面向控制的大规模集成电路模块,具有功能强、体积小、可靠性高、 价格低廉等特点,在工业控制、数据采集、智能仪表、机电一体化、家用电器等领域得 到了广泛的应用,极大的提高了这些领域的技术水平和自动化程度。单片机应用的意义 绝不仅限于它的广阔范围以及带来的经济效益,更重要的意义在于,单片机的应用正从 根本上改变着传统的控制系统的设计思想和设计方法。从前必须由模拟电路或数字电路 实现的大部分控制功能,现在使用单片机通过软

2、件就能实现了。随着单片机应用的推广 普及,单片机控制技术将不断发展, 日益完善。 本文是设计频率 / 脉冲宽度的测量与显示 的硬件电路与程序的编制。它可以测量脉冲信号的脉冲宽度,频率等参数。利用定时器 的门控信号GATE进行控制可以实现脉冲宽度的测量。利用定时器TO定时T1计数来测量由P3.5 口输入的脉冲信号的频率。在单片机应用系统中, 为了便于对LED显示器进行管理,需要建立一个显示缓冲区。显示时采用动态扫描的方式将将各位数的BCD码依序输入到LED中,并连续扫描2秒钟。关键词:门控信号GATE脉冲宽度;扩展测量范围;脉冲频率目录摘要3目录4第1章设计原理51.1脉冲宽度测量原理 51.2

3、信号频率测量原理 51.3扩展测量范围原理 5第2章测量系统的硬件设计6第3章测量系统的软件设计73.1脉冲宽度测量的序设计 73.2脉冲频率测量的程序设计 8第4章总结9参考文献11附录12第1章 设计原理1.1 脉冲宽度测量利用定时器的门控信号GATE进行控制可以实现脉冲宽度的测量。对定时器T1来讲,如果GATE=0必须使软件控制位 TR1=1,且INT1为高电平方可启动定时器 T1,即定时 器T1的启动要受外部中断请求信号INT1的影响。利用此特点,被测脉冲信号从INT1端引入,其上升沿启动 T1计数,下降沿停止 T1计数。定时器的计数值乘以机器周期即 为脉冲宽度。下图中给出了脉冲宽度测

4、量的原理图。为低时启动T1下降沿停止计数被检测脉冲信号厂INT1为高则等待上升沿开始计数图1脉冲宽度测量过程1.2 脉冲频率测量频率测量实际上就是在1s内对脉冲个数进行计数,计数值就是信号频率。令定时器T0工作在方式1,得到100ms的定时间隔,再进行软件计数10次,形成一个1s的测量闸门信号。在测量闸门信号期间令计数器T1工作在计数方式1,对脉冲信号的频率计数,计数值存入 COUNTCOUNT+和COUNT+单元,计数值通过 6位动态数码管显示出来。1.3 扩展测量范围原理上述系统被测脉冲宽度范围最大为65535US,扩展计数器的位数可提高脉冲宽度的测量范围。令定时器 T1工作在方式1定时,

5、GATE=1用COUN单元,COUNT+单元即定 时器T1的计数单元TH1和TL1组成一个32位的计数器对脉冲宽度进行测量。并且在定 时器T1溢出时,给COUNT+赋值#01H,并将THI和TH0置零,重新开始计数。以扩展系统测量范围使可以达到130ms的任务要求。同时在进行频率测量时,当计数器T1溢出时,给COUNT+赋值#01H,并将THI和TH0置零,重新开始计数。以扩展系统测量范围使 可以达到100KHZ的任务要求。第2章测量系统的硬件设计由于是在实验箱测试本系统,且实验箱上的芯片已经连接固定好了,不能调整,所以以LAP 2000模拟系统的逻辑波形作为输入信号。因此硬件只需选用8051

6、芯片以及六位LED数码管。在单片机应用系统中,为了便于对LED显示器进行管理,需要建立一个显示缓冲区。显示缓冲区DISBUF是片内 RAM的一个区域,占用片内RAM的 70H至75H单元,它的作用是存放要显示的字符,其长度与LED的位数相同。显示程序的任务是把显示缓冲区中待显示的字符送往LED显示器显示。地址70H71H0572H0473H0374H75H最低位最高位图2显示程序缓冲区在进行动态扫描显示时,从DISBUF中依次取出待显示的字符,采用查表的方法得到其对应的字形代码,逐个点亮各位数码管,每位显示2ms左右,即可使各位数码管显示要显示的字符。 其中位码地址为 8002H,段码地址为8

7、004H。在多位LED显示时,为了简 化硬件电路,通常将所有位的段选线相应地并联在一起,由一个8位I/O 口控制,形成段选线的多路复用。而各位的共阳极或共阴极分别由相应的I/O线控制,实现各位的分时选通。图3硬件电路实际连线图第3章测量系统的软件设计3.1 脉冲宽度测量的程序设计利用定时器的门控信号GATE进行控制可以实现脉冲宽度的测量。将控制字#90H输入到TMOD中, GATE位置 1,采用T1工作在方式定时1。当输入为高时先等待,在变为 低电平时置位 TR0,则输入信号再变为高时开始计数。以此实现T1对INT1引脚即P3.5口输入的信号进行脉冲宽度测量。显示测量值图4测量脉冲宽度的程序设

8、计3.2 脉冲频率测量的程序设计采用定时器TO定时,T1计数对输入信号的频率进行测量。TO工作在定时方式1,定时100ms,定时10次,达到定时1s的目的。T1工作在计数方式1对P3.5 口输入信号的 频率计数。并且开放 T1的中断,TI溢出时,在COUNT+2位赋值1,实现测量范围的扩 展,以达到设计任务的要求。图5测量脉冲频率的程序设计第4章 总结本文介绍了单片机测量脉冲频率和脉冲宽度系统的设计,包括原理的阐述、硬件及 软件的构成。通过这次单片机课程设计,使我将课堂上弄不懂的抽象的程序有了感性的 认识,也使我加深了对单片机程序的理解,更重要的所讲的知识与具体的实际中应用的 程序连接起来提高

9、了我的动手与思考能力。单片机设计总的来讲说对我们这些没经历过实践检验的学生来说是很有挑战的,因为他不同于课堂,在编程序的过程中遇到了很多 课堂上没理解的知识,通过大量书籍的查阅以及老师同学们的帮助,这些问题都解决了。 单片机设计总的来讲说对我们这些没经历过实践检验的学生来说是很有挑战的,因为他 不同于课堂,。 通过这次课程设计,使我得到了一次用专业知识、专业技能分析和解决 问题全面系统的锻炼。使我在单片机的基本原理、单片机应用系统结合过程,以及在常 用编程设计思路技巧(特别是汇编语言C51语言)的掌握方面都能向前迈了一大步。参考文献1 .单片微型计算机接口技术及应用张淑清 著,国防工业出版社2

10、 .单片机原理及应用技术张淑清著,国防工业出版社3 .单片机典型系统设计实例精讲彭为.黄科中.雷道仲 著,电子工业出版社4 .MCS-51单片机应用开发实用子程序边春远王志强著,人民邮电出版社5 .单片机原理,应用与PROTEU仿真 张靖武.田灵彬著,电子工业出版社附录ORG0000HLJMPSTARTORG000BHLJMPT0INTORG001BHLJMPT1INTORG0040HCOUNTEQU40HORG0070HDISBUFEQU70HSTART:MOVSP,#40HMOVTMOD,#90HAGAIN:MOVTH1,#00HMOVTL1,#00HWAIT0:JBP3.3,WAIT0S

11、ETBTR1WAIT1:JNBP3.3,WAIT1WAIT2:JBP3.3,WAIT2CLRTR1MOVA,TH1MOVCOUNT,AMOVA,TL1MOVCOUNT+1 ,AMOVR6,COUNTMOVR7,COUNT+1MOVA,R7RLCAMOVR7,AMOVA,R6RLCAMOVR6,ACLRAADDC A,#00HMOV COUNT+2, ALCALL WDISBUFLCALL DISPLAYLJMPAGAIN1T0INT:ATH0 , #3CHTL0 ,#0B0HCOUNT+3A , COUNT+3CA , #0AHEXIT2F0EAAPUSHMOVMOVINCMOVCLRSUBB

12、JCSETBCLRPOPEXIT2:RETIT1INT:CLR TF1MOV COUNT+2, #01HMOV TH1 ,#00HMOVTL1, #00HSETBTR1RETIWDISBUF:AR3 , AR4 , AR5 , AR2 ,#18HCLRMOVMOVMOVMOVHB1:HB2:MOVR6 ,COUNTMOVR7 ,COUNT+1MOVR1 ,COUNT+2CLRCMOVA ,R7RLCAMOVR7 ,AMOVA ,R6RLCAMOVR6 ,AMOVA ,R1RLCAMOVR1 ,AMOVA ,R5ADDCA ,R5DAAMOVR5 ,AMOVA ,R4ADDCA ,R4DAAMO

13、VR4 ,AMOVA ,R3ADDCA ,R3DAAMOVR3 ,ADJNZR2 ,HB2MOVRO ,#DISBUF+5MOVA ,R3SWAPAANLA ,#0FHMOVR0 ,ADECR0MOVA ,R3ANLA ,#0FHMOVR0 ,ADECR0MOVA ,R4SWAPAMOV DEC MOV ANL MOV DEC MOV SWAP ANL MOV DEC MOV ANL MOV RETANLA , #OFHR0 , AROA , R4A , #0FHR0 , AROA , R5AA , #OFHR0 , AROA , R5A , #OFHR0 , ADISPLAY:MOV R2

14、, #0FFHDISPLAY1:MOVMOVMOVNEXT:MOVMOVMOVXMOVMOVMOVCMOVMOVXR3 ,#06HR0 ,#70HR1 ,#00000001BA , R1DPTR, #8002H DPTR, ADPTR , #TABA ,R0A , A+DPTRDPTR ,#8004HDPTR, ALCALL DELAYDEC R3MOV A , R3JZ EXIT1INC R0MOVA, R1RL AMOVR1, ASJMP NEXTEXIT1:DEC R2MOV A , R2JNZ DISPLAY1RETTAB:DB3FH,06H,5BH,4FH,66H,6DH07H,7F

15、H, 6FHDELAY:MOVR7,#02H;DEL1:MOVR6,#0FFHDEL2:DJNZR6 ,DEL2DJNZR7 ,DEL1RET7DHAGAIN1:MOVCOUNT,#00HMOVCOUNT+1,#00HMOVCOUNT+2,#00HMOVCOUNT+3,#0AHMOVTMOD,#51HMOVTH0, #3CHMOVTL0,#0B0HMOVTH1, #00HMOVTL1,#00HSETBTR0SETBTR1SETBET0SETBET1SETBCLREAF0WAIT:JNBF0,WAITMOVA,TH1MOVCOUNT,AMOVA,TL1MOVCOUNT+1 ,ALCALLWDISBUF;LCALLDISPLAYLJMPAGAIN

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 社会民生


经营许可证编号:宁ICP备18001539号-1