基于单片机的4位数字频率计设计(含程序)大学毕设论文

上传人:夏** 文档编号:508410118 上传时间:2023-10-24 格式:DOC 页数:31 大小:718.50KB
返回 下载 相关 举报
基于单片机的4位数字频率计设计(含程序)大学毕设论文_第1页
第1页 / 共31页
基于单片机的4位数字频率计设计(含程序)大学毕设论文_第2页
第2页 / 共31页
基于单片机的4位数字频率计设计(含程序)大学毕设论文_第3页
第3页 / 共31页
基于单片机的4位数字频率计设计(含程序)大学毕设论文_第4页
第4页 / 共31页
基于单片机的4位数字频率计设计(含程序)大学毕设论文_第5页
第5页 / 共31页
点击查看更多>>
资源描述

《基于单片机的4位数字频率计设计(含程序)大学毕设论文》由会员分享,可在线阅读,更多相关《基于单片机的4位数字频率计设计(含程序)大学毕设论文(31页珍藏版)》请在金锄头文库上搜索。

1、数字频率计实验报告摘要在电子技术中,频率是最基本的参数之一,并且与许多电参量的测量方案、测量结果都有十分密切的关系,因此,频率的测量就显得更为重要。测量频率的方法有多种,其中电子计数器测量频率具有精度高、使用方便、测量迅速,以及便于实现测量过程自动化等优点,是频率测量的重要手段之一。数字式频率计的测量原理有两类:一是直接测频法,即在一定闸门时间内测量被测信号的脉冲个数;二是间接测频法即测周期法,如周期测频法。直接测频法适用于高频信号的频率测量,通常采用计数器、数据锁存器及控制电路实现,并通过改变计数器阀门的时间长短在达到不同的测量精度;间接测频法适用于低频信号的频率测量,本设计中使用的就是直接

2、测频法,即用计数器在计算1S内输入信号周期的个数。 数字频率计是数字电路中的一个典型应用,实际的硬件设计用到的器件较多,连线比较复杂,而且会产生比较大的延时,造成测量误差、可靠性差。随着现场可编程单片机的广泛应用,运用单片机控制,将使整个系统大大简化,提高了系统的整体性能和可靠性。关键词:频率测量;单片机;数据处理目录摘要1目录2一 系统概述31.系统组成32.信号处理方法3二 器件简介61.主控制器AT89S526(1)MSC-51芯片资源简介6(2)单片机的引脚7(3)89S51单机的电源线8(4)89S51单片机的外接晶体引脚8(5)89S51单片机的控制线8(6)89S51单片机复位方

3、式92.数码管显示器简介10(1)数码管的分类10(2)数码管的驱动方式10(3)数码管参数11(4)数码管应用11(5)数码管使用的电流与电压12(6)恒流驱动与非恒流驱动对数码管的影响12(7)怎样测量数码管引脚123.元件设计软件CPLD13(1)CPLD简介13(2)CPLD器件特点13三 系统设计141.硬件设计14(1)信号予处理电路14(2)单片机系统14(3)数据显示电路15(4)VHDL实现74LS160功能152.系统软件设计18(1)数据处理过程18(2)系统软件框图19(3)浮点数学运算程序19(4)实测结果和误差分析20四 参考文献22附件1:程序清单23一 系统概述

4、1.系统组成频率计由单片机89C51 、信号予处理电路、串行通信电路、测量数据显示电路和系统软件所组成,其中信号予处理电路包含待测信号放大、波形变换、波形整形和分频电路。系统硬件框图如图1 所示。信号予处理电路中的放大器实现对待测信号的放大,降低对待测信号的幅度要求;波形变换和波形整形电路实现把正弦波样的正负交替的信号波形变换成可被单片机接受的TTL/ CMOS 兼容信号;分频电路用于扩展单片机的频率测量范围并实现单片机频率测量和周期测量使用统一的输入信号。图1 系统硬件框图系统软件包括测量初始化模块、显示模块、信号频率测量模块、量程自动转换模块、信号周期测量模块、定时器中断服务模块、浮点数格

5、式化模块、浮点数算术运算模块、浮点数到BCD 码转换模块。系统软件框图如图2 所示。2.信号处理方法本频率计的设计以AT89C51 单片机为核心,利用它内部的定时/ 计数器完成待测信号周期/ 频率的测量。单片机AT89C51 内部具有2 个16 位定时/计数器,定时/ 计数器的工作可以由编程来实现定时、计数和产生计数溢出中断要求的功能。在构成为定时器时,每个机器周期加1 (使用12MHz 时钟时,每1us 加1) ,这样以机器周期为基准可以用来测量时间间隔。在构成为计数器时,在相应的外部引脚发生从1 到0 的跳变时计数器加1 ,这样在计数闸门的控制下可以用来测量待测信号的频率。外部输入每个机器

6、周期被采样一次,这样检测一次从1 到0 的跳变至少需要2 个机器周期(24 个振荡周期) ,所以最大计数速率为时钟频率的1/ 24 (使用12MHz 时钟时,最大计数速率为500 KHz) 。定时/计数器的工作由相应的运行控制位TR 控制,当TR置1 ,定时/ 计数器开始计数;当TR 清0 ,停止计数。设计综合考虑了频率测量精度和测量反应时间的要求。例如当要求频率测量结果为3 位有效数字,这时如果待测信号的频率为1Hz ,则计数闸门宽度必须大于1000s。为了兼顾频率测量精度和测量反应时间的要求,把测量工作分为两种方法。当待测信号的频率大于100Hz 时,定时/ 计数器构成为计数器,以机器周期

7、为基准,由软件产生计数闸门,这时要满足频率测量结果为3 位有效数字,则计数闸门宽度大于1s 即可。当待测信号的频率小于100Hz 时,定时/ 计数器构成为定时器,由频率计的予处理电路把待测信号变成方波,方波宽度等于待测信号的周期。用方波作计数闸门,当待测信号的频率等于100Hz ,使用12MHz 时钟时的最小计数值为10000 ,完全满足测量精度的要求。图2 系统软件框图1. 3 频率计的量程自动切换在使用计数方法实现频率测量时,这时外部的待测信号为定时/ 计数器的计数源,利用软件延时程序实现计数闸门。频率计的工作过程为:首先定时/计数器的计数寄存器清0 ,运行控制位TR 置1 ,启动定时/

8、计数器;然后运行软件延时程序,同时定时/计数器对外部的待测信号进行计数,延时结束时TR 清0 ,停止计数;最后从计数寄存器读出测量数据,在完成数据处理后,由显示电路显示测量结果。在使用定时方法实现频率测量时,这时外部的待测信号通过频率计的予处理电路变成宽度等于待测信号周期的方波,该方波同样加至定时/ 计数器的输入脚。这时频率计的工作过程为:首先定时/ 计数器的计数寄存器清0 ,然后检测方波高电平是否加至定时/ 计数器的输入脚;当判定高电平加至定时/计数器的输入脚,运行控制位TR 置1 ,启动定时/计数器对单片机的机器周期的计数,同时检测方波高电平是否结束;当判定高电平结束时TR 清0 ,停止计

9、数,然后从计数寄存器读出测量数据,在完成数据处理后,由显示电路显示测量结果。测量结果的显示格式采用科学计数法,即有效数字乘以10 为底的幂。这里设计的频率计用5 位数码管显示测量结果:前3 位为测量结果的有效数字;第4 位为指数的符号;第5 位为指数的值。采用这种显示格式既保证了测量结果的显示精度,又保证了测量结果的显示范围(0. 100Hz - 9. 99MHz) 。量程自动转换的过程由频率计测量量程的高端开始。由于只显示3 位有效数字,在测量量程的高端计数闸门不需要太宽, 例如在10. 0 KHz -9919 KHz 频率范围,计数闸门宽度为10mS 即可。频率计每个工作循环开始时使用计数

10、方法实现频率测量,并使计数闸门宽度为最窄,完成测量后判断测量结果是否具有3 位有效数字,如果成立,将结果送去显示,本工作循环结束;否则将计数闸门宽度扩大10 倍,继续进行测量判断,直到计数闸门宽度达到1s ,这时对应的频率测量范围为100Hz - 999Hz。如果测量结果仍不具有3 位有效数字,频率计则使用定时方法实现频率测量。定时方法测量的是待测信号的周期,这种方法只设一种量程,测量结果通过浮点数运算模块将信号周期转换成对应的频率值,再将结果送去显示。这样无论采用何种方式,只要完成一次测量即可,频率计自动开始下一个测量循环,因此该频率计具有连续测量的功能,同时实现量程的自动转换。二 器件简介

11、1.主控制器AT89S52 AT89C51简介AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFlash Programmable and Erasable Read Only Memory)的低电压,高性能CMOS 8位微处理器,俗称单片机。AT89C2051是一种带2K字节闪烁可编程可擦除只读存储器的单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是

12、它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。外形及引脚排列如图所示 主要特性:与MCS-51 兼容 4K字节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24MHz三级程序存储器锁定1288位内部RAM32可编程I/O线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 管脚说明:VCC:供电电压。GND:接地。P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数

13、据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。P1口:P1口是一个内部提供上拉电阻的8位双向I/O口,P1口缓冲器能接收输出4TTL门电流。P1口管脚写入1后,被内部上拉为高,可用作输入,P1口被外部下拉为低电平时,将输出电流,这是由于内部上拉的缘故。在FLASH编程和校验时,P1口作为第八位地址接收。 P2口:P2口为一个内部上拉电阻的8位双向I/O口,P2口缓冲器可接收,输出4个TTL门电流,当P2口被写“1”时,其管脚被内部上拉电阻拉高,且作为输入。并因此作为输入时,P2口的管脚被外部拉低,将输出电流。这是由于

14、内部上拉的缘故。P2口当用于外部程序存储器或16位地址外部数据存储器进行存取时,P2口输出地址的高八位。在给出地址“1”时,它利用内部上拉优势,当对外部八位地址数据存储器进行读写时,P2口输出其特殊功能寄存器的内容。P2口在FLASH编程和校验时接收高八位地址信号和控制信号。P3口:P3口管脚是8个带内部上拉电阻的双向I/O口,可接收输出4个TTL门电流。当P3口写入“1”后,它们被内部上拉为高电平,并用作输入。作为输入,由于外部下拉为低电平,P3口将输出电流(ILL)这是由于上拉的缘故。P3口也可作为AT89C51的一些特殊功能口,如下表所示:口管脚 备选功能P3.0 RXD(串行输入口)P

15、3.1 TXD(串行输出口)P3.2 /INT0(外部中断0)P3.3 /INT1(外部中断1)P3.4 T0(记时器0外部输入)P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号