数字频率计 (2).doc

上传人:小小飞 文档编号:5185763 上传时间:2020-02-16 格式:DOC 页数:21 大小:3.57MB
返回 下载 相关 举报
数字频率计 (2).doc_第1页
第1页 / 共21页
数字频率计 (2).doc_第2页
第2页 / 共21页
数字频率计 (2).doc_第3页
第3页 / 共21页
数字频率计 (2).doc_第4页
第4页 / 共21页
数字频率计 (2).doc_第5页
第5页 / 共21页
亲,该文档总共21页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《数字频率计 (2).doc》由会员分享,可在线阅读,更多相关《数字频率计 (2).doc(21页珍藏版)》请在三一文库上搜索。

1、2014 2015学年 第 一 学期单片机C51技术运用课 程 设 计 报 告题 目: 数字频率器计 专 业: 电子信息工程 班 级: 12电子信息工程(2)班 姓 名: 刘磊 陆兴凯 孟凯 彭志峰 尚宏晔 沈左彪 指导教师: 周珍艮 电气工程学院 2014 年 11月29日任务书课题名称数字频率计指导教师(职称)王银花(讲师) 执行时间20142015学年第1学期 第13周学生姓名学号承担任务刘磊1209121089软件设计陆兴凯1209121090程序编程和调试孟凯1209121091电路图设计彭志峰1209121092电路图设计尚宏晔1209121093硬件制作沈左彪1209121094

2、硬件制作设计目的设计一个数字频率计 设计要求利用STC89C52单片机上编程,利用定时计数器,来实现对输入的TTL信号进行频率测量,测频结果通过4位数码管显示出来。要求能够对0100KHZ的信号频率进行准确计数,计数误差不超过1HZ。 目录第一章 频率计数器的设计任务和要求31.1 频率计数器的设计任务31.2 设计要求及发挥部分3第二章 方案的总体设计32.1 方案的设计32.2 方案的整体框图42.3 方案的说明4第三章 硬件设计43.1 单片机的最小系统43.1.1 上电复位电路43.1.2 晶振电路53.2 LED数码管显示电路53.3 整体电路6第四章 软件设计74.1 程序流程图7

3、4.2 初始化子函数74.3 延时子函数74.4 中断子函数8第五章 系统的调试和说明85.1 C程序的说明85.2 C程序编译的结果85.3 实物图9第六章 设计总结与心得体会106.1设计总结106.2 设计心得11参考文献11附录12数字频率计4 摘 要数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字,显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号,方波信号以及其他各种单位时间内变化的物理量。本课程设计主要设计一个简易的频率计,来实现信号在0-9999HZ范围内周期变化的方波频率的测定。该文主要介绍了基于STC89C52 单片机频率

4、计的设计方案和实现方法,该系统主要由硬件和软件两部分组成,其中重点给出了具体硬件电路图和软件流程图以及具体工作原理。硬件部分通过洞洞板的布线设计帮助,可以确保焊接时尽量少的飞线和出错。软件通过keil vision编译及调试,其中在P1.7口编入了一个5500HZ的方波,用以仿真调试该频率计的软硬件功能是否能够实现输出频率的功能。另外,本设计多增加了一个按键功能,通过一个按键来控制定时计数器的开始和关闭。该频率计还带有3*3的矩阵键盘,可以作为扩展应用区,通过编程实现。本设计中用的是LED共阴数码管,输出频率时采用的事动态显示的方法。关键词:频率计;单片机;动态显示1第一章 频率计数器的设计任

5、务和要求1.1 频率计数器的设计任务本课程设计任务主要是基于单片机系统,通过软件、硬件的调试,完成一个具有计数功能的频率计数器。1.2 设计要求及发挥部分1.1.1设计要求主要有:l 设计的方案合理、正确;l 完成系统硬件的设计及正确焊接;l 完成系统软件的设计与调试;1.1.2发挥部分:本课程设计的发挥部分较小,只再增加了一个按键来控制定时器,计数器的开始。 第二章 方案的总体设计2.1 方案的设计本课程设计的基于ATMEL公司STC89C52单片机的频率计数器,是利用该52单片机内部的定时计数器来完成待测信号频率的测量。STC89C52单片机内部具有2个16位的定定时计数器T0与T1,可以

6、通过编程来实现所需要的功能。定时/计数器T0与T1的核心都是16位的加1计数器,TH0与TL0构成 在构成定时器/计数器T0加1计数器的高8位和低8位;TH1与TL1构成在构成定/计数器T1加1计数器的高8位和低8位。加1计数器的初值可以通过程序设定,这样就可以获得不同的计数器初值或定时时间。加1计数器用作定时器时,每个机器周期加1,这样以机器周期为基准可以用来测量时间间隔。定时/计数器用作计数器时,在相应的外部方波从1到0的跳变时计数器加1,这样在计数闸门的控制下可以测量待测信号的频率。定时/计数器的工作由响应的运行控制位TR控制,当TR置1时,定时/计数器开始计数,当TR置零时停止计数。

7、在本设计方案中,我在程序中设定T0工作在计数状态,T1工作在计时状态下。T0计数器对输入信号进行计数,由于信号的频率就是每秒钟信号的脉冲个数,于是我让T1工作在定时状态下,定时时间为1秒。每定1秒钟到,就停止T0的计数,然后从T0的计数单元中读取计数的数值,即完成了信号的频率测量。最后通过四位数码显示出频率值。由于要尽可能的使用最少的元件,在满足设计要求的前提下,我将P1.7口与P3.4口(即T0)用导线连接,在设定程序时,利用T1定时的同时在P1.7口输出一个设定好的方波,以便直观的检测频率计数器的软件、硬件是否达到设计的基本功能。2.2 方案的整体框图 STC89C52单片机按键电路LED

8、数码管显示电路上电复位电路晶振电路电源电路图2-1 系统总体框图2.3 方案的说明本课程设计采用内部给定的方波来实现频率计数的功能,缺陷在于只能测得一个方波的频率,但是这个方波的输入意在便于检测设计的软、硬件的功能是否实现,若功能可以实现,则可用于测量外部输入的0100kHZ之间的任意频率值。第三章 硬件设计3.1 单片机的最小系统3.1.1 上电复位电路复位是单片机的初始化操作。单片机系统在上电启动运行时,都需要先复位。其作用是使CPU 和系统中其他部件都处于一个确定的初始状态,并从这个状态开始工作。而复位是一个很重要的操作方式,但单片机本身是不能自动经行复位的,必须配合相应的外部复位电路才

9、能实现。本设计的复位电路采用上电复位加按键手动复位,其电路如下图所示:图3-1 复位电路3.1.2 晶振电路单片机工作是在统一的时钟脉冲控制下一拍一拍地进行的,这个脉冲是单片机控制器中的时序电路发出的。单片机的时序就是 CPU 在执行指令时所需控制信号的时间顺序。为了保证各部件的同步工作,单内部电路应在唯一的时钟信号下严格按时序进行工作。其电路原理图如下:图3-2 晶振电路3.2 LED数码管显示电路显示器是微机重要的输出设备。显示器有显示监控结果、提供用户操作界面等功能。在本次设计中采用了 LED 显示器,即数码管。数码管的每一个数码段是一只发光二极管。当发光二极管导通时,相应的一个点或者一

10、个笔画发光,控制发光二极管发光组合,可以显示出所需字符。我采用了共阴极结构。在定义其显示字形的码段时,通过 I/O 口送出七段码 其段码表如下:表3-1 共阴数码管段选码显示字形0123456789共阴段选码3FH06H5BH4FH66H6DH7DH07H7FH6FH数码管的电路图如下: 图3-3数码管接线电路3.3 整体电路 图3-4 整体原理图第四章 软件设计本课程设计包含了主函数、初始化子函数、中断子函数、按键扫描子函数和延时子函数等多个函数。开始4.1 程序流程图初始化中断程序频率输出图4-1主流程图4.2 初始化子函数初始化子函数主要是:1.对T0、T1定时/计数器进行初始化;2.对

11、单片机各管脚及按键赋初值,以便主程序的执行。4.3 延时子函数主要用于数码管动态显示的子程序中。void delay(uchar z)uchar x,y;for(x=z;x0;x-)for(y=113;y0;y-);4.4 中断子函数流程图如下:图4-2中断程序流程图第五章 系统的调试和说明5.1 C程序的说明C 语言是一种通用的程序设计语言,其代码率高,数据类型及运算符丰富,位操作能力强,适用于各种应用的程序设计。使用 C 语言进行单片机应用系统开发,具有编程灵活、调试方便、目标代码编译效率高的特点。C 语言也是目前使用最广的单片机应用系统编程语言。由 C 语言编程的单片机应用程序,称为单片

12、机 C 语言程序。MCS-51 系列单片机开发系统的编译软件可以对 51 单片机 C 语言源程序进行编译,称为 C51 编译器。在 C51 编译软件中可进行 51 单片机C 语言程序的调试。5.2 C程序编译的结果在keil vision上编译的结果:图5-1程序调试图5.3 实物图 图5-2正面实物图 图5-3 反面实物图第六章 设计总结与心得体会6.1设计总结为期一周的单片机课程设计已经接近尾声了,单片机课程设计的主要目的是让我们提高动手能力和综合运用能力。经过这一周的设计,我更加深刻的体会到“万事开头难”这话的含义了。这次单片机的课程设计,我选的课题是频率计数器。这个看似很简单的课题,要

13、实现起来却是困难重重。首先是硬件的设计,通过在loch master上布线设计硬件的连接方式,这一步还是比较轻松,主要是布的线要尽可能的不交叉。之后就开始对着图焊板子,开始把元器件焊上去还是比较简单好看的。可是紧接着进入焊线阶段就难住我了,线拉不直,焊在板子上就很丑;另一方面,在焊的过程中就会发现有那么几根线是按照布线图来焊是实现不了的,于是,中途又会重新改布线图。硬件部分我花了一天的时间,反反复复的修改,焊接,终于初步完成了。板子焊好后就进入硬件调试阶段,硬件调试时,发现了线路的一些错误接法和元器件位置的错接等等,这样有花了半天时间调试修改,硬件就基本上算是完成了。接着马上又进入了编写软件及

14、调试过程,这是让我最头疼的一部分。我自己边看视频边按着流程图慢慢的编写了一个,可是输入硬件后不出意外的,无法实现其功能。于是就进入软件的调试阶段,这个过程持续了很长时间,最后是通过同学的帮助才能调试成功,实现它能实现的功能,当然还是有些微小误差的。总的来说,这一个星期里学到了很多的东西,更觉得自己需要不断的提高自己。6.2 设计心得通过一周的单片机课程设计,真的是感触颇多。这一个星期以来我们每天早上9点就到教室一直待到晚上9点才回去,每天和大家在一起焊板子,一起讨论问题,一起互相帮助的画面还历历在目。这其中有欢声笑语,也有苦有累。在评优答辩的时候,看到了很多很多优秀的课程设计,让我一边敬佩,又

15、一边自惭形秽。每个优秀的人都有着不同常人的努力,而我还不够努力,所学的东西也很有限。很多优秀的课程设计都是通过他们自己在课余时间自学而成的。相比之下,我需要更加努力的去学习更多的知识,不断的填充自己。参考文献【1】张友德,单片微型机原理应用与实践(第四版),复旦大学出版社,2000【2】李朝青.单片机原理及接口技术(第三版). 北京航空航天大学出版社.2005.【3】丁明亮、唐前辉. 51单片机应用设计与仿真-基于Keil C与Proteus. 北京航空航天大学出版社,2009.【4】杨长兴、刘卫国.C+程序设计.中国铁道出版社.2010.附录1、 源程序#include#define uin

16、t unsigned int#define uchar unsigned charuchar code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;sbit D1=P10;sbit D2=P11;sbit D3=P12;sbit D4=P13;sbit D5=P17;sbit A1=P24;sbit A2=P25;uint m,i,t;uint A0,B0,C0,D0;void display(uint A0,uint B0,uint C0,uint D0);void init();void delay(uchar z);vo

17、id main()init();A1=0; A2=1;while(1) if(A2=0) A2=0; TR0=1; TR1=1; if(i0;x-)for(y=113;y0;y-);void timer0() interrupt 1 TR0=0;TH0=0xff;TL0=0xff;m=m+1;void timer1() interrupt 3TR1=0;TH1=(65536-20)/256;TL1=(65536-20)%256;i+;t+; if(t=15)D5=D5;t=0; TR1=1;void display(uint A0,uint B0,uint C0,uint D0)D4=1; D

18、1=1; P0=tableA0;D1=0;delay(1);D1=1;D2=1;P0=tableB0;D2=0;delay(1);D2=1;D3=1;P0=tableC0;D3=0;delay(1);D3=1;D4=1;P0=tableD0;D4=0;delay(1);2、 硬件名称列表序号名称数量1STC89C52单片机12排阻13LED数码管14按键105220电阻161K电阻27USB接口1830pf电容2910f电容11012M晶振1答辩记录及评分表 课题名称数字频率计答辩教师(职称)周珍艮、王银花 答辩时间 2014-2015学年第1学期 第 13周 答辩记录1. 什么是数字频率计?

19、答: 数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字,显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号,方波信号以及其他各种单位时间内变化的物理量2. 数字频率计基本原理?答:数字计数式频率计能直接计数单位时间内北侧信号的脉冲数,然后以数字形式显示频率值。3.该数字频率计中如何利用该52单片机内部的定时计数器来完成待测信号频率的测量?答:在本设计方案中,我在程序中设定T0工作在计数状态,T1工作在计时状态下。T0计数器对输入信号进行计数,由于信号的频率就是每秒钟信号的脉冲个数,于是我让T1工作在定时状态下,定时时间为1秒。每定1秒钟到,就

20、停止T0的计数,然后从T0的计数单元中读取计数的数值,即完成了信号的频率测量。最后通过四位数码显示出频率值。4.如何设计在仿真时能检测该电路设计的正确性?答:由于要尽可能的使用最少的元件,在满足设计要求的前提下,我将P1.7口与P3.4口(即T0)用导线连接,在设定程序时,利用T1定时的同时在P1.7口输出一个设定好的方波,以便直观的检测频率计数器的软件、硬件是否达到设计的基本功能。5.该课程设计中软件设计主要有哪几个部分?答:主函数、初始化子函数、中断子函数、按键扫描子函数和延时子函数。6.硬件制作时应该注意哪些?答:(1)先熟悉开发板原理图再和电路板上的丝印层相对 照,以免出现错误。 (2)焊接时要从低到高的顺序,先焊小元器件再焊大 元器件,特别是先焊接USB接口和电阻这类器件。(3)为了保证焊接的质量,焊接元件时一定要先固定 一个引脚,然后调整元件的位置及高低至合适后,再焊另外的引脚,以免焊歪,因为一旦固定两个以上引脚,元件的位置就不可动(4) 焊接数码管时一定要注意,必须先焊接板子底层 的三个芯片,(建议:这三个芯片焊接完后可以准备一个锋利的指甲剪或斜口钳,剪去芯片在正面 评 分 表学生姓名学号评分刘磊1209121089陆兴凯1209121090孟凯1209121091彭志峰1209121092尚宏晔1209121093沈左彪1209121094

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

当前位置:首页 > 项目管理


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