单片机课程设计---数字频率计.docx_第1页
单片机课程设计---数字频率计.docx_第2页
单片机课程设计---数字频率计.docx_第3页
单片机课程设计---数字频率计.docx_第4页
单片机课程设计---数字频率计.docx_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

单片机课程设计报告简易频率计姓名:侯 应 占学号:2220093183专业:电子信息工程班级:09级1班摘要频率测量是电子学测量中最为基本的测量之一。频率计主要是由信号输入和放大电路、单片机模块、分频模块及显示电路模块组成。at89c51单片机是频率计的控制核心,来完成它待测信号的计数,译码,显示以及对分频比的控制。利用它内部的定时/计数器完成待测信号频率的测量。在整个设计过程中,首先,我们把待测信号经过放大整形;然后把信号送入单片机的定时计数器里进行计数,获得频率值;最后把测得的频率数值送入显示电路里进行显示。实现1hz200khz的频率测量以及周期的测量,而且可以实现量程自动切换流程。以at89c51单片机为核心,通过单片机内部定时/计数器的门控时间,方便对频率计的测量。其待测频率值使用三位共阳极数码管显示,并可以自动切换量程,单位分别由红、黄、绿3个led指示。本次采用单片机技术设计一种数字显示的频率计,具有测量准确度高,响应速度快,体积小等优点。关键字:单片机,频率计,测量设计任务和要求任务: 设计制作一个简易频率计,该频率计能测量正弦波和方波信号的频率。 设计指标: 基本要求: 1.能测量频率正弦波和方波10hz100khz。2.数码显示共3位,其中1位小数,自动换挡(00999hz)有一个指示灯亮,表示单位是hz,0.0099.9khz,另一个灯亮,表示单位是khz。3.要有输入信号超范围的保护电路。发挥要求:1.能测量方波的周期,并显示。2.能测量100mv的正弦波。方案论证数字频率计设计的几种方案测量频率的方法有很多种,主要分为模拟法和数字法两大类,因为本次设计的要求和环境,现在主要讨论数字法中的电子计数式的几种测频方法。电子计数式的测频方法主要有以下几种:脉冲数定时测频法(m法),脉冲周期测频法(t法),脉冲数倍频测频法(am法),脉冲数分频测频法(at法),脉冲平均周期测频法(m/t法),多周期同步测频法。下面是几种方案的具体方法介绍。脉冲数定时测频法(m法):此法是记录在确定时间tc内待测信号的脉冲个数mx,则待测频率为: fx=mx/tc 脉冲周期测频法(t法):此法是在待测信号的一个周期tx内,记录标准频率信号变化次数mo。这种方法测出的频率是: fx=mo/tx 脉冲数倍频测频法(am法):此法是为克服m法在低频测量时精度不高的缺陷发展起来的。通过a倍频,把待测信号频率放大a倍,以提高测量精度。其待测频率为: fx=mx/ato 脉冲数分频测频法(at法):此法是为了提高t法高频测量时的精度形成的。由于t法测量时要求待测信号的周期不能太短,所以可通过a分频使待测信号的周期扩大a倍,所测频率为: fx=amo/tx 脉冲平均周期测频法(m/t法):此法是在闸门时间tc内,同时用两个计数器分别记录待测信号的脉冲数mx和标准信号的脉冲数mo。若标准信号的频率为fo,则待测信号频率为: fx=fomx/mo 多周期同步测频法:是由闸门时间tc与同步门控时间td共同控制计数器 计数的一种测量方法,待测信号频率与m/t法相同。几种方案的优劣讨论以上几种方法各有其优缺点:脉冲数定时测频法,时间tc为准确值,测量的精度主要取决于计数mx的误差。其特点在于:测量方法简单,测量精度与待测信号频率和门控时间有关,当待测信号频率较低时,误差较大。脉冲周期测频法,此法的特点是低频检测时精度高,但当高频检测时误差较大。脉冲数倍频测频法,其特点是待测信号脉冲间隔减小,间隔误差降低;精度比m法高a倍,但控制电路较复杂。脉冲数分频测频法,其特点是高频测量精度比t法高a倍,但控制电路也较复杂。脉冲平均周期测频法,此法在测高频时精度较高,但在测低频信号时精度较低。多周期同步测频法,此法的优点是,闸门时间与被测信号同步,消除了对被测信号计数产生的1个字误差,测量精度大大提高,且测量精度与待测信号的频率无关,达到了在整个测量频段等精度测量。本次设计采用的方案根据频率的定义,频率是单位时间内信号波的个数,因此采用上述各种方案都能实现频率的测量。但是本论文设计的是一个用单片机做为电路控制系统的数字式频率计,采用脉冲定时测频法,则在低频率的测量时误差会大一些。采用脉冲周期测频法则测高频率时精度无法保证;采用脉冲数倍频测频法和脉冲数分频测频法则精度有所提高,但控制电路较复杂;采用脉冲平均周期测频法则很难兼顾低频信号的测量;而采用多周期同步测频法,闸门时间与被测信号同步,消除了对被测信号计数产生的1误差,测量精度大大提高,且测量精度与待测信号的频率无关,达到了在整个测量频段等精度测量。本次设计由于个人水平有限,因此,本次设计根据需要,采用脉冲定时测频法。数字频率计工作原理数字式频率计是测量频率最常用的仪器之一,其基本设计原理是首先把待测信号通过放大整形,变成一个脉冲信号,然后通过控制电路控制计数器计数,最后送到译码显示电路里进行显示,其基本构成框图如图3-1所示。 放大整形电路 控制门电路 计数器电路 译码显示电路待测信号图3-1 数字式频率计原理框图由上图可以看出,待测信号经过放大整形电路后得到一个待测信号的脉冲信号,然后通过计数器计数,可得到需要的频率值,最后送入译码显示电路中显示出来。但是控制部分才是最重要的,它在整个系统的运行中起至关重要的作用。本方案主要以单片机为核心,利用单片机的计数器和定时器的功能对被测信号进行计数。编写相应的程序可以使单片机自动调节测量的量程,并把测出的频率数据送到显示电路显示。放大整形模块:由于输入的信号可以是正弦波,三角波。而后面的闸门或计数电路要求被测信号为矩形波,所以需要设计一个整形电路则在测量的时候,首先通过整形电路将正弦波或者三角波转化成矩形波。此处采用集成四路电压比较器lm339来实现信号的放大整形功能。其中负输入端接地,正输入端接输入待测信号。输出端将输出整齐的方波,送入单片机的计数器计数。电路如下图:89c51芯片介绍:89c51引脚图如图3-2所示。图3-2 89c51引脚图单片机作为控制系统和计数器,是本次设计的最重要的部分,at89c51是一种带4k字节闪烁可编程可擦除只读存储器(fperomfalsh programmable and erasable read only memory)的低电压,高性能cmos8位微处理器,俗称单片机。该器件采用atmel高密度非易失存储器制造技术制造,与工业标准的mcs-51指令集和输出管脚相兼容。由于将多功能8位cpu和闪烁存储器组合在单个芯片中,atmel的at89c51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。所以本次设计采用at89c51单片机。本次设计采用的是89c51单片机, 89c51是一种高性能低功耗的采用cmos工艺制造的8位微控制器,它提供下列标准特征:4k字节的程序存储器,128字节的ram,32条i/o线,2个16位定时器/计数器,,一个5中断源两个优先级的中断结构,一个双工的串行口,片上震荡器和时钟电路。其引脚说明如下:引脚说明:vcc:电源电压。gnd:接地。p0口:p0口是一组8位漏极开路型双向i/o口,作为输出口用时,每个引脚能驱动8个ttl逻辑门电路。当对0端口写入1时,可以作为高阻抗输入端使用。当p0口访问外部程序存储器或数据存储器时,它还可设定成地址数据总线复用的形式。在这种模式下,p0口具有内部上拉电阻。在eprom编程时,p0口接收指令字节,同时输出指令字节在程序校验时。程序校验时需要外接上拉电阻。p0口:p0口是一带有内部上拉电阻的8位双向i/o口。p0口的输出缓冲能接受或输出4个ttl逻辑门电路。当对p0口写1时,它们被内部的上拉电阻拉升为高电平,此时可以作为输入端使用。当作为输入端使用时,p0口因为内部存在上拉电阻,所以当外部被拉低时会输出一个低电流(iil)。p1口:p2是一带有内部上拉电阻的8位双向的i/o端口。p1口的输出缓冲能驱动4个ttl逻辑门电路。当向p1口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(iil)。p2口在访问外部程序存储器或16位地址的外部数据存储器(例如movx dptr)时,p2口送出高8位地址数据。在这种情况下,p2口使用强大的内部上拉电阻功能当输出1时。当利用8位地址线访问外部数据存储器时(例movx r1),p2口输出特殊功能寄存器的内容。当eprom编程或校验时,p2口同时接收高8位地址和一些控制信号。p3口:p3是一带有内部上拉电阻的8位双向的i/o端口。p3口的输出缓冲能驱动4个ttl逻辑门电路。当向p3口写1时,通过内部上拉电阻把端口拉到高电平,此时可以用作输入口。作为输入口,因为内部存在上拉电阻,某个引脚被外部信号拉低时会输出电流(iil)。p3口同时具有at89c51的多种特殊功能,p3.0的第二功能是串行输入口rxd, p3.1的第二功能是串行输出口txd, p3.2的第二功能是外部中断0,p3.3的第二功能是外部中断1,p3.4的第二功能是定时器t0,p3.5的第二功能是定时器t1,p3.6的第二功能是外部数据存储器写选通/wr,p3.7的第二功能是外部数据存储器读选通/rd。 数码管显示:led段显示器结构与原理led显示器是由发光二极管显示字段组成的显示块,有7段和“米”字段之分。这种显示块有共阳极和共阴极两种。此外,显示块中还有一个圆点型发光二极管(在图中以dp表示)用于显示小数点。通过发光二极管亮、暗的不同组,可以显示多中数字、字母以及其他符号。led显示块中的发光二极管共有两种连接方法:(1)共阳极接法发光二极管的阳极连在一起构成公共阳极。使用时公共阳极接5v,这样,阴极端输入低电平的段的发光二极管被点亮,相应的段被显示;而输入高电平的段则不点亮。(2)共阴极接法发光二极管的阴极连在一起构成公共阴极。使用时公共阴极接地,这样,阳极端输入高电平的段的发光二极管被点亮,相应的段被显示;而输入低电平的段则不点亮。数码管引脚如图3-3 图3-3 数码管引脚图 数字频率计软件系统设计:定时器/计数器的两个作用是用来精确的确定某一段时间间隔(作定时器用)或累计外部输入的脉冲个数(作计数器用)。t1中断服务子程序流程如图3-4所示。测频时,定时器t1 工作在定时方式,每次定时50ms ,则t1 中断20 次正好为1秒,即t1用来产生标准秒信号,定时器t1 用作计数器,对待测信号计数,每秒钟的开始启动t1 ,每秒钟的结束关闭t1,则定时器t1之值乘以分频系数就为待测信号的频率。图3-4 t1中断服务子程序定时计数器t0工作在计数方式, 对信号进行计数,计数器0中断流程图如图3-5所示。图3-5 计数器0中断服务子程序实验数据记录经软件的调试修改再调试,如此反复,排除各种故障最终基本完成了设计所要求的任务。由单片机内部定时器计数器构成基本测量电路,外加整形和分频电路,由系统软件设计可以测出1hz-25khz的量程范围,可以实现量程档的自动转换,使用的动态显示测量时会出现闪烁现象,但显示数值准确,稳定时显示不闪烁。 软件仿真测量数据如下表6-8所示。表1:hz档的数据记录表待测值(hz)10.328.9268.7324.8490.6678.3978.8测量值(hz)1029269325491678979表2:khz档的数据记录表待测值(khz)8.2515.560.12161.75180.7245250测量值(khz)8.2515.560.1162181245246 实验过程中发现,不加分频电路,单片机最高只能测量25khz的频率,频率高于25khz后,显示测量值反而降低,这应该是由于单片机的计数器只能计数25khz频率以下的信号。总结感谢学校和老师对我的培养,给我这个自己动手的机会和空间。通过本次课程设计,我感觉自己的知识水平有了明显的提高。刚开始看到自己要设计的题目时,感觉无从下手。有很多原理都没搞清楚,设计中用到的大部分元件以前都没见过。对于设计中要用到的protel ,isis等软件更是不是很了解,有时为了弄懂一个器件就要花半天的时间看书查资料。在使用软件时,由于全是英文版本,用起来相当的不顺畅,只能自己摸索。但通过长时间地问老师和自己上网查资料,自学,终于了解了设计中各模块中的原理及功能。对于各种软件也有了不同程度的认识,基本上能使用设计中涉及到的各种软件。在设计过程中能学到很多平时上课没学到的东西,思考问题时也能从多角度,多方面考虑。学会了在遇到难题时,能捉住要点,再找出切实可行的解决方法。在设计过程中加深了对单片机的认识掌握了单片机的特性,学会了用c语言写程序,了解了汇编语言跟c语言的优缺点,c51语言用语编写较复杂的大型程序,汇编则用于对效率要求很高的场合,尤其是底层函数的编写。参考文献1陈敬远.数字频率计的vhdl设计j.浙江传媒学院学报; 20022何均 ,杨明.适合于单片机实现的极值搜索算法j.单片机与嵌入式系统应用,20043杜玉远.基于top-down方法的数字频率计的设计与实现j.电子世界, 20044钱进.基于at89c2051的高度精度数字频率计的设计j.机电产品开发与创新,2007附录:#include#includeunsigned char timecount=0;float x,y,t0count=0;unsigned char code table=0x3f,0x06,0x5b,0x4f,0x66,0x6d,0x7d,0x07,0x7f,0x6f;#define pb xbyte0x8001/段码输出口#define pc xbyte0x8002/位码输出口#define pctrl xbyte0x8003 /控制子口sbit led1=p10;/1 dang hzmssbit led2=p12;/2 dang khzussbit tlength=p14;/xian shi zhou qi kong zhivoid display(float x);void delay() /delay 10 ms unsigned char a,b;for(a=10;a0;a-) for(b=110;b0;b-);void init() tmod=0x15; th0=0; tl0=0; th1=(65536-25000)/256; tl1=(65536-25000)%256; tr1=1; tr0=1; et0=1; et1=1; ea=1; pctrl=0x80; led1=0; led2=0; tlength=0; x=0;void main(void) init(); x=543; while(1) display(x);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论