毕业设计(论文)基于89C51单片机的可自选量程的数字频率计设计

上传人:1777****777 文档编号:37848694 上传时间:2021-11-04 格式:DOC 页数:31 大小:306.93KB
收藏 版权申诉 举报 下载
毕业设计(论文)基于89C51单片机的可自选量程的数字频率计设计_第1页
第1页 / 共31页
毕业设计(论文)基于89C51单片机的可自选量程的数字频率计设计_第2页
第2页 / 共31页
毕业设计(论文)基于89C51单片机的可自选量程的数字频率计设计_第3页
第3页 / 共31页
资源描述:

《毕业设计(论文)基于89C51单片机的可自选量程的数字频率计设计》由会员分享,可在线阅读,更多相关《毕业设计(论文)基于89C51单片机的可自选量程的数字频率计设计(31页珍藏版)》请在装配图网上搜索。

1、中北大学2010届毕业设计说明书1 引言 单片机是20世纪中期发展起来的一种面向控制的大规模集成电路模块,具有功能强、体积小、可靠性高、价格低廉等特点,在工业控制、数据采集、智能仪表、机电一体化、家用电器等领域得到了广泛的应用,极大的提高了这些领域的技术水平和自动化程度1。 51系列单片机是国内目前应用最广泛的一种8位单片机之一,随着嵌入式系统、片上系统等概念的提出和皮鞭接受及应用,51系列单片机还会在继后很唱一段时间占据嵌入式系统产品的低端市场,因此,作为新世纪的大学生,在信息产业高速发展的今天,掌握单片机的基本结构、原理和使用时非常重要的。随着电子技术的发展,当前数字系统的设计正朝着速度快

2、、容量大、体积小、重量轻的方向发展。推动该潮流迅猛发展的引擎上日趋进步和完善的设计技术。目前数字频率计的设计可以直接面向用户要求,根据系统的行为和功能要求,自上至下的逐层挖不出个办法相应的描述、综合、优化、仿真与验证,知道生成期间。上述设计过程除了系统行为和功能描述以外。其余所有的设计过程几乎都可以用计算机来自动的完成,也就是说做到了电子设计自动化(EDA)。这样做可以大大地缩短系统的设计周期,以适应当今品种多,批量下的电子市场的需求,提高产品的竞争能力。数字频率计是数字电路中的一个典型应用,实际的硬件设计用到的器件较多,连线比较复杂,而且会产生比较大的延时,造成测量误差、可靠性差。随着复杂可

3、编程逻辑器件(CPLD)的广泛应用,以EDA工具作为开发手段,运用汇编语言。将使整个系统大大简化。提高整体的性能和可靠性。本文用汇编语言在CPLD器件上实现一种8 b数字频率计测频系统,能够用十进制数码显示被测信号的频率,不仅能够测量正弦波、方波和三角波等信号的频率,而且还能对其他多种物理量进行测量。具有体积小、功耗低等特点。2 系统概述2.1 数字频率计的概述数字频率计是计算机、通讯设备、音频视频等科研生产领域不可缺少的测量仪器。它是一种用十进制数字显示被测信号频率的数字测量仪器。它的基本功能是测量正弦信号,方波信号及其他各种单位时间内变化的物理量。在进行模拟、数字电路的设计、安装、调试过程

4、中,由于其使用十进制数显示,测量迅速,精确度高,显示直观,经常要用到频率计3。2.2 设计思路及原理数字频率计是用于测量信号(方波、正弦波或其它脉冲信号)的频率,并用十进制数字显示,它具有精度高,测量迅速,读数方便等优点。频率计的基本原理是用一个频率稳定度高的频率源作为基准时钟,对比测量其他信号的频率。通常情况下计算每秒内待测信号的脉冲个数,此时我们称闸门时间为1秒。闸门时间也可以大于或小于一秒。闸门时间越长,得到的频率值就越准确,但闸门时间越长则没测一次频率的间隔就越长。闸门时间越短,测的频率值刷新就越快,但测得的频率精度就受影响。本文。数字频率计是用数字显示被测信号频率的仪器,被测信号可以

5、是正弦波,方波或其它周期性变化的信号4。如配以适当的传感器,可以对多种物理量进行测试,比如机械振动的频率,转速,声音的频率以及产品的计件等等。脉冲信号的频率就是在单位时间内所产生的脉冲个数,其表达式为,其中,f为被测信号的频率,N为计数器所累计的脉冲个数。 T为产生N个脉冲所需的时间。计数器所记录的结果,就是被测信号的频率。如在1S内记录1000个脉冲,则被测信号的频率为1000Hz。晶振产生较高的标准频率,经分频器后可获得各种时基脉冲(1mS,10mS,0.1S,1S等),时基信号的选择由开关k控制.用单稳态触发器产生指令和清零信号,对置零信号而言,当达到所调节的延时时间时,延时电路输出一个

6、复位信号,使计数器和所有的触发器量0,为后续新的一次取样作好准备,即能锁住一次显示的时间,使保留到接受新的一次取样为止。用4片十进制计数器74ls160完成对整形后的待测信号的计数,通过74ls273寄存,便于数码管显示,用74ls48和其驱动的共阴极的半导体数码管作为主要显示电路。另外,信号的放大部分还可以用三极管放大电路来完成,而整形部分可用施密特触发器来完成,对施密特触发器只涉及到一个外接小电容,典型值为0.01uF。为简单起见,可用555来做。控制门用一个与门即可实现。两个单稳态触发器完全一样,均可用555来做。计数器用74LS160来完成,免去了接十进制计数器的麻烦(若用74LS16

7、1)。锁存电路用四路锁存器74LS75来完成。其输出可直接接到数电箱上的74LS247译码电路,进而显示结果。2.3 系统组成待测信号 频率计由单片机89C51、信号予处理电路、串行通信电路、测量数据显示电路和系统软件所组成,其中信号予处理电路包含待测信号放大、波形变换、波形整形和分频电路。系统硬件框图如图1所示。信号予处理电路中的放大器实现对待测信号的放大,降低对待测信号的幅度要求;波形变换和波形整形电路实现把正弦波样的正负交替的信号波形变换成可被单片机接受的TTL/CMOS兼容信号;分频电路用于扩展单片机的频率测量范围并实现单片机频率测量和周期测量使用同一的输入信号5。分频电路波形整形波形

8、变换放大器单片机串行通信电路单片机图 1 系统硬件框图系统软件包括测量初始化模块、显示模块、信号频率测量模块、量程自动转换模块、信号周期测量模块、定时器中断服务模块、浮点数格式化模块、浮点数运算模块、浮点数到BCD码转换模块。系统软件框图如图2所示。量程自动转换模块频率测量模块初始化模块周期测量模块定时器中断服务模块显示模块浮点数格式化模块浮点数算术运算模块浮点数到BCD码转换模块图 2系统软件框图2.4 处理方法 本频率计的设计以AT89C51单片机为核心,利用它内部的定时/计数器完成待测信号周期/频率的测量。单片机AT89C51内部具有2个16位定时/计数器,定时/计数器的工作可以由变成来

9、实现定时、计数和产生计数溢出中断要求的功能。在构成为定时器时,每隔几期周期加1(使用12MHz时钟时,每1us加1)这样以及其周期为基准可以用来测量时间间隔6。在构成计数器时,在相应的外部引脚发生从1到0的的跳变时计数器加1,这样在计数闸门的控制下可以用来测量待测信号的频率。外部输入每隔及其周期被采样一次,这样检测一次从1到0的跳变至少需要2个极其周期(24个震荡周期),所以最大计数速率为时钟频率的1/24(使用12MHz时钟时,最大计数速率为500KHz)。定时/计数器的工作由相应的运行控制位TR控制,当TR置1,定时/计数器开始计数;当TR清0,停止计数。 设计综合考虑了频率测量精度和测量

10、反应时间的需求。例如当要求频率测量结果为3位有效数字,这时如果待测信号的频率为1Hz,则计数闸门宽度必须大于1000s。为了兼顾频率测量精度和测量反应时间的要求,把测量工作分为两种方法。当待测信号的频率大于100Hz时。定时/计数器构成为计数器,以及其周期为基准,由软件产生计数闸门,这时要满足频率测量结果为3位有效数字,则计数闸门宽度大于1s即可。当待测信号的频率小于100Hz时,定时/计数器构成为定时器,由频率计的予处理电路把待测信号变成方波,方波宽度等于待测信号的周期。用方波作技术闸门,当待测信号的频率等于100Hz,使用12MHz时钟时的最小计数值为10000,完全满足测量精度的要求7。

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

12、平 是否加至定时/计数器的输入脚;当判定高电平加至定时/计数器的输入脚,运行控制为TR置1,启动定时/计数器对单片机的及其周期的计数,同时检测方波高电平是否结束;当判定高电平结束时TR置0,停止计数,然后从计数寄存器读出测量数据,在完成数据处理后,由显示电路显示测量结果。 测量结果的显示格式采用科学计数法,即有效数字乘以10为底的幂。这里设计的频率计用5位数码管显示测量结果:前3位为测量结果的有效数字;第4位为指数的符号;第5位为指数的值。采用这种显示格式既保证了测量结果的显示精度,由保证了测量结果的显示范围(0.100Hz9.99MHz)8。 量程自动转换的过程由频率计测量量程的高端开始。由

13、于只显示3位有效数字,在测量量程的高端计数闸门不需要太宽,例如在10.0KHz-99.9KHz频率范围,计数闸门宽度为10mS即可。频率计每个工作循环开始时使用计数方法实现频率测量,并是计数闸门宽度为最窄,完成测量后判断测量结果是否具有3位有效数字,如果成立,将结果送去显示,本工作循环结束;否则将计数闸门宽度扩大10倍,继续进行测量判断,直到计数闸门宽度达到1s,这时对应的频率测量范围为100Hz-999Hz。如果测量结果仍不具有3位有效数字,频率计则使用定时方法实现频率测量。定时方法测量的是待测信号的周期,这种方法只设一种量程,测量结果通过浮点运算模块将信号周期转换成对应的频率值,再将结果送

14、去显示,这样无论采用何种方式,只要完成一次测量即可,频率计自动开始下一个测量循环。因此该频率计具有连续测量的功能,同时实现量程的自动转换9。3 系统硬件设计3.1 信号予处理电路频率计信号予处理电路如图3 所示,它由四级电路构成。第一级为零偏置放大器,当输入信号为零或者为负电压时,三极管截止,输出高电平;当输入信号为正电压时,三极管导通,输出电压随着输入电压的上升而下降。零偏置放大器把如正弦波样的正负交替波形变换成单向脉冲,这使得频率计既可以测量任意方波信号的频率,也可以测量正弦波信号的频率。放大器的放大能力实现了对小信号的测量,本电路可以测量幅度0. 5V 的正弦波或脉冲波待测信号10。三极

15、管应采用开关三极管以保证放大器具有良好的高频响应。第二级采用带施密特触发器的反相器7414 ,它用于把放大器生成的单向脉冲变换成与 电平相兼容的方波。第三级采用十进制同步计数器74160 ,第级输出的方波加到74160 的CL K,当从74160 的TC 输出可实现10分频(多个74160 的级连可以进一步扩展测频范围) 。第四级同样采用十进制同步计数器74160 ,第三级输出的方波加到它的CL K,从它的Q0 输出即可实现2 分频,且其输出为对称方波,方波宽度等于待测信号的周期,从而为测量信号周期提供基础。图3 信号予处理电路3. 2 AT89C51单片机及其引脚说明频率测量电路选用89C5

16、1 作为频率计的信号处理核心。89C51 包含2 个16 位定时/ 计数器、1个具有同步移位寄存器方式的串行输入/ 输出口和4 K8 位片内FLASH 程序存储器。16 位定时/ 计数器用于实现待测信号的频率测量或者待测信号的周期测量。同步移位寄存器方式的串行输入/ 输出口用于把测量结果送到显示电路。4 K 8 位片内FLASH 程序存储器用于放置系统软件。89C51 与具有更大程序存储器的芯片管脚兼容,如: 89C52(8 K8 位) 或89C55 (32 K8 位) ,为系统软件升级打下坚实的物质基础。AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROMFalsh Pro

17、grammable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。单片机的可擦除只读存储器可以反复擦除100次。该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL的AT89C51是一种高效微控制器,AT89C2051是它的一种精简版本。AT89C单片机为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。 AT89C51是一种低功耗高性能的8位单片机,片内带有一个4k字节的Flash可编擦除只读存储器(PEROM),它采用

18、了CMOS工艺和ATMEL公司的高密度非易失性存储器(NURAM)技术,而且其输出引脚和指令系统和MCU_51系列单片机兼容。片内的Flash存储器允许在系统内可改编程序或用常规的非易失性的存储器编程器来编程。同时已具有三级程序存储器保密的性能: 在众多的51系列单片机中,要算ATMEI公司的AT89C51更实用,因为它不仅和MCU_51系列单片机指令、管脚完全兼容,而且其片内的4k程序存储器是Flash工艺的,这种下艺的存储器用户可以用电的方式瞬间擦除、改写。所以说这种单片机对开发设备的要求很低,开发时间也大大缩短。写入单片机的程序还可以加密,这又很好地保护了所有者的劳动成果。 AT89C5

19、1是一个低电压,高性能CMOS 8位单片机,片内含4k bytes的可反复擦写的Flash只读程序存储器和128 bytes的随机存取数据存储器(RAM),器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准MCS-51指令系统,片内置通用8位中央处理器和Flash存储单元,内置功能强大的微型计算机的AT89C51提供了高性价比的解决方案。AT89C51是一个低功耗高性能单片机,40个引脚,32个外部双向输入/输出(I/O)端口,同时内含2个外中断口,2个16位可编程定时计数器,2个全双工串行通信口,AT89C51可以按照常规方法进行编程,也可以在线编程。其将通用的微处理器和Flas

20、h存储器结合在一起,特别是可反复擦写的Flash存储器可有效地降低开发成本。 AT89C51具有PDIP、及PLCC等三种封装形式,以适应不同产品的需求。主要功能特性: 兼容MCS51Z指令系统 4k可反复擦写(1000次)Flash ROM 32个双向I/O口 静态操作0-24MHz 1个串行中断 128x8bit内部RAM 两个外部中断源 共6个中断源 可直接驱动LED 3级加密位 低功耗空闲和掉电模式 软件设置睡眠和唤醒功能1主如前所述,AT89C51单片机片内带有一个4k字节的Flash可编程可擦除只读存储器,这就决定了在某些方面其自身的优越性。 主要特性:与MCS-51 兼容 4K字

21、节可编程闪烁存储器 寿命:1000写/擦循环数据保留时间:10年全静态工作:0Hz-24Hz三级程序存储器锁定128x8bit内部RAM 32可编程I/O线两个16位定时器/计数器5个中断源 可编程串行通道低功耗的闲置和掉电模式片内振荡器和时钟电路 2管脚说明: VCC:供电电压。 GND:接地。 P0口:P0口为一个8位漏级开路双向I/O口,每脚可吸收8TTL门电流。当P1口的管脚第一次写1时,被定义为高阻输入。P0能够用于外部程序数据存储器,它可以被定义为数据/地址的第八位。在FIASH编程时,P0 口作为原码输入口,当FIASH进行校验时,P0输出原码,此时P0外部必须被拉高。 P1口:

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

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

24、P3.5 T1(记时器1外部输入)P3.6 /WR(外部数据存储器写选通)P3.7 /RD(外部数据存储器读选通)P3口同时为闪烁编程和编程校验接收一些控制信号。 RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置

25、0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行状态ALE禁止,置位无效。 /PSEN:外部程序存储器的选通信号。在由外部程序存储器取指期间,每个机器周期两次/PSEN有效。但在访问外部数据存储器时,这两次有效的/PSEN信号将不出现。/EA/VPP:当/EA保持低电平时,则在此期间外部程序存储器(0000H-FFFFH),不管是否有内部程序存储器。注意加密方式1时,/EA将内部锁定为RESET;当/EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。 XTAL1:反向振荡放大

26、器的输入及内部时钟工作电路的输入。 XTAL2:来自反向振荡器的输出。3振荡器特性: XTAL1和XTAL2分别为反向放大器的输入和输出。该反向放大器可以配置为片内振荡器。石晶振荡和陶瓷振荡均可采用。如采用外部时钟源驱动器件,XTAL2应不接。有余输入至内部时钟信号要通过一个二分频触发器,因此对外部时钟信号的脉宽无任何要求,但必须保证脉冲的高低电平要求的宽度。4芯片擦除: 整个PEROM阵列和三个锁定位的电擦除可通过正确的控制信号组合,并保持ALE管脚处于低电平10ms 来完成。在芯片擦操作中,代码阵列全被写“1”且在任何非空存储字节被重复编程以前,该操作必须被执行。此外,AT89C51设有稳

27、态逻辑,可以在低到零频率的条件下静态逻辑,支持两种软件可选的掉电模式。在闲置模式下,CPU停止工作。但RAM,定时器,计数器,串口和中断系统仍在工作。在掉电模式下,保存RAM的内容并且冻结振荡器,禁止所用其他芯片功能,直到下一个硬件复位为止11。3.3 数据显示电路显示电路采用静态显示方式。频率测量结果经过译码,通过89C51 的串行口送出。串行口工作于模式0 ,即同步移位寄存器方式。这时从89C51 的RXD(P3. 0) 输出数据,送至串入并出移位寄存器74164 的数据输入口A 和B ;从TXD( P3. 1) 输出时钟,送至74164 的时钟输入口CP。74164 将串行数据转换成并行

28、数据,进行锁存。74164 输出的8 位并行数据送至8 段L ED ,实现测量数据的显示。使用这种方法主程序可不必扫描显示器,从而单片机可以进行下一次测量。这种方法也便于对显示位数进行扩展.4系统软件设计4.1 数据处理过程在频率计开始工作,或者完成一次频率测量,系统软件都进行测量初始化。测量初始化模块设置堆栈指针(SP) 、工作寄存器、中断控制和定时/ 计数器的工作方式。定时/ 计数器的工作首先被设置为计数器方式,即用来测量信号频率。在对定时/ 计数器的计数寄存器清0 后,置运行控制位TR 为1 ,启动对待测信号的计数。计数闸门由软件延时程序实现,从计数闸门的最小值开始,也就是从测量频率的高

29、量程开始。计数闸门结束时TR 清0 ,停止计数。计数寄存器中的值通过16 进制数到10 进制数转换程序转换为10 进制数。对10 进制数的最高位进行判别,若该位不为0 ,满足测量数据有效位数的要求,测量值和量程信息一起送到显示模块;若该位为0 ,将计数闸门的宽度扩大10 倍,重新对待测信号的计数,直到满足测量数据有效位数的要求12。当上述测量判断过程直到计数闸门宽度达到1s ,这时对应的频率测量范围为100Hz - 999Hz ,如果测量结果仍不具有3 位有效数字,频率计则使用定时方法测量待测信号的周期。定时/计数器的工作这时被设置为定时器方式,在对定时/计数器的计数寄存器清0 后,判断待测信

30、号的上跳沿是否到来。待测信号的上跳沿到来后,置运行控制位TR 为1 ,以单片机工作周期为单位,启动对待测信号的周期测量。然后判断待测信号的下跳沿是否到来,待测信号的下跳沿到来后,运行控制位TR 清0 ,停止计数。16 位定时/计数器的最高计数值为65535 ,这样在待测信号的频率较低时,定时/计数器将发生溢出。当产生定时/计数器将溢出,程序进入定时器中断服务程序,中断服务程序对溢出次数进行计数。待测信号的周期由3 个字节组成:定时/计数器溢出次数、定时/计数器的高8 位和低8 位。信号的频率f 与信号的周期T 之间的关系为: 完成信号的周期测量后,需要做一次倒数运算才能获得信号的频率。为提高运

31、算精度,这里采用浮点数算术运算。浮点数用3 个字节组成,第一字节最高位为数符,其余7 位为阶码;第二字节为尾数的高字节;第三字节为尾数的低字节。待测信号周期的3 个字节定点数首先通过截取高16 位、设置数符和计算阶码转换为上述格式的浮点数。然后浮点数算术运算对其进行处理,获得用浮点数格式表达的信号频率值。浮点数到BCD 码转换模块把用浮点数格式表达的信号频率值变换成本频率计的显示格式,送到显示模块显示待测信号的频率值。无论从哪一种方式进入显示模块,完成显示后,频率计都开始下一次信号的频率测量。4.2系统软件框图入口系统软件设计采用模块化设计方法。整个系统由初始化模块、显示模块和信号频率测量模块

32、等各种功能模块组成(见图4)。上电后,进入系统初始化模块,系统软件开始运行。在执行过程中,根据运行流程分别调用各个功能模块完成频率测量、量程自动切换、周期测量和测量结果显示。系统初始化频率测量量程自动转换NoYes测量数据显示有效数位判别中断服务程序周期测量浮点数格式化F=1/T浮点数到BCD码图4 系统软件流程图4.3浮点数学运算程序8051 系列单片机属于微控制器,由于其CPU字长和指令功能的限制,它适用于控制领域,在信号处理方面不很擅长。在本频率计中需要完成周期到频率的换算,为保证测量结果的准确,这里应用了浮点数数学运算13。从周期到频率的换算过程包括: 3字节定点数到浮点数的转换、浮点

33、数数学运算和浮点数到BCD 码的转换。由于通过多次的转换,整个换算过程精度还不是很高,通过实测,精度大约为千分之二左右。5 基本测量原理与理论误差分析5.1 高精度恒定误差频率周期测量技术频率测量误差分析及其公式推导如下。 (1)量化误差 设测得频率为Fx被测频率真实值为Fxe标准频率为Fs,在一次测量中预置门时间为Tpr,被测信号计数值为Nx,标推频率信号计数值为Ns .Fx计数的起停时间都是由该信号的上升沿触发的,在Tpr时间内对Fx的计数Nx无误差;在此时间内Fs的计数从Ns最多相差一个脉冲,即 而 由上式可得 根据相对误差公式有 由上式得 因为 所以 即 由上式可以得出以下结论相对测量

34、误差与频率无关。增大Tpr或提高Fs,可以增大Ns,减少测量误差,提高测量精度。 (2)标准频率误差 标准频率误差为Fs/Fs,因为晶体的稳定度很高,标准频率误差可以进行校准,相对于量化误差,校准后的标准频率误差可以忽略。 (3)分变率误差分析先由单片机给出闸门开启信号 ,此时计数器并不计数 ,而是等到被测信号的上升沿到来时,才开始计数。然后,两组计数器分别对被测信号和时标脉冲计数,当单片机给出闸门关闭信号后 ,计数器并不立即停止计数 ,而是等到被测信号下降沿到来的时刻才结束计数 ,完成一次测量过程。可以看出 ,实际闸门与设定的闸门并不严格相等 ,但最大差值不超过被测信号的一个周期14。 设被

35、测信号的计数为 NX ,对时标的计数为 N0 ,时标频率为 f0 ,闸门时间为,则被测信号频率为: 计数器的开闭与被测信号是完全同步的 ,即在实际闸门中包含整数个被测信号的周期 ,因而不存在对被测信号计数的 1 个字误差 ,由式 微分可得 相对误差为: 式(5)中前两项分别表示计数器 T0 和计数器 T1 的误差 ,第三项为频率准确度。由于计数是在相关同步门控时间内完成的,即由待测信号同步控制,因此同步门控与计数器 T1 的计数脉冲相关,且 T/ Tx 的比值 Nx为整数 ,故被测信号计数值不存在计数误差。而计数器 T0 对时标的计数 ,由于门控的启闭时刻的随机性及 T/ T0之比值 N0 为

36、非整数( T0 为时标周期) ,在门控的启闭时刻分别有时间零头T1 和 T2 无法计入,故存在 1 误差。当忽略频率准确度误差时,多周期同步法测频的最大误差为: 由式(6)可以看出 ,测量分辨率与被测信号频率的大小无关 ,仅与闸门时间及时标频率有关 ,即实现了被测频带内的等精度测量,闸门时间越长,时标频率越高 ,分辨率越高。 5.2 预置门时间信号与闸门时间信号 预置门的概念与传统的闸门的概念是不同的。预置门是指同时启动或停止标准频率信号计数器和被测信号计数器的门控信号。硕置门的概念用于高精度恒定误差测频测周期方法中,并称预置门的时间宽度为预置门时间15。 高精度恒定误差测频方法测量精度与预置

37、门时间和标准频率有关,与被测信号的频率无关。在预置门时间和闸门时间相同而被测信号频率不同的情况下,高精度恒误差额率测量法的测量精度不变,而直接测频法精度随着被测信号频率的增加而接近线性地增大。5.3 脉冲宽度测量理论误差分析 根据方案中的脉冲宽度测量方法,分析脉宽测量误差。设被测信号脉宽为Twxe,标准频率信号频率为Fs,则脉冲宽度的测量值为 在一次测量中,对标准频率信号的计数值Nx可能产生1个标准频率信号周期的计数误差,则脉宽测量相对误差为 其中.可以看出,在Fs一定时,脉宽越小,误差越大。 当=100s,=60MHz时,6000,则有 5.4 周期脉冲信号占空比测量误差分析 使用第一部分中

38、所述的占空比方法,根据误差合成原理,周期测量相对误差最大恒等于脉冲宽度测量相对误差16。 在标准频率为60MHz,被测频率1kHz(即周期为0.001s)时。设其占空比为10,如果要满足题日部分要求,由脉冲宽测量相对误羌公式计算出的相对误差应小于 实际精度完全可以超过这个要求。6 实测结果和误差分析为了衡量这次设计的频率计的工作情况和测量精度,我们对系统进行了试验。以南京电讯仪器厂制造的E312B 型通用计数器为基准,用这次设计的频率计对信号源进行了测量,测量数据如表1 所示。表1 频率测量对比表E312B 率测量(Hz) 5.00M500K50.0K5.00K50050.05.000.500

39、制作频计测量(Hz)5.01M500K50.0K5.01K50150.05.020.502如图3 信号予处理电路所示,待测信号在进入单片机之前经过了10 2 次分频。频率计以进入单片机时的信号频率等于100Hz 为基准,既待测信号频率等于2 KHz 为基准,大于此频率采用频率测量,小于此频率采用周期测量。由表1 频率测量对比表可以看出,频率测量的测量精度大于周期测量的测量精度。采用计数法实现频率测量,误差来源主要有计数误差和闸门误差两部分。误差表达式为这里N 为计数值,t 为闸门时间。闸门时间相对误差dt/ t 主要取决于晶振的频率稳定度,选择合适的石英晶体和振荡电路,误差一般可小于10 -

40、6 。当仅显示3 位有效数字时,该项误差可以忽略。对于dN/ N 部分,无论闸门时间长短,计数法测频总存在1 个单位的量化误差。在表1 中,待测信号频率大于2 KHz 时的误差就来源于计数误差。增加显示的有效数字位数可降低该项误差的影响。当待测信号频率小于2 KHz 时,直接测量的是信号的周期。周期测量的误差表达式为:这里 为量化误差, 为晶振的频率稳定度。进行周期测量时进入单片机的信号频率小于100Hz ,使用12MHz 时钟这时的最小计数值为10000 。当仅显示3 位有效数字时,该项误差现在可以忽略。待测信号周期测量值通过浮点数数学运算变换成频率值,这时的误差来源于浮点数数学运算和数制之

41、间转换所带来的误差。7 结论 大学四年中,我系统的学习了单片机的知识,也看到了单片机控制程序的广阔前景,选择这个课题,正是希望能加深自己对单片机各方面的理解,并在运用先前学到的知识进行设计的过程中,进一步的理解其实质和作用,巩固和拓展以前的学习成果,从而希望今后能在这个领域作出成绩。 由于单片机技术发展已经很成熟,我更多的是借鉴前人的工作,完善我的设计。当然,我在前人的基础上向前走了一步,无论是原器件的选择,还是程序的设计,我做的比他们复杂,这并不是简单意义上的重复,而是消化吸收和创新。 在设计的过程中,我一方面澄清了先前的一些错误理解,另一方面也真正的体会到了书本知识转化为实践时的困难,往往

42、很不起眼的一件事情,就是设计的关键,必须得搞清楚。为了查找相关的技术文献资料,我上网,去学校图书馆甚查找资料,虽然辛苦一点,但是令人欣慰的是学到了书本上学不到的东西,并且掌握了设计的一般方法。 三个月的时间很短,我的能力也有限,很可能我的设计存在这样或那样的不足,希望各位多多批评斧正。附录A 汇编源程序 WX EQU 78H ;1 ms中断一次 ORG 0000H AJMP DP ORG 001BH AJMP DP0 ORG 0100HDP: MOV SP,# 80H MOV WX,# 11111110B MOV R7,# 7H mov R1,# 61H MOV TMOD,# 10H MOV

43、TL1,# 0CH MOV TH1,# 0FEH SETB EA SETB ET1 SETB TR1 SJMP $DP0: MOV TL1,# 0CH MOV TH1,# 0FEH CLR P2.7 MOV C,P2.7 JC DP01 setb P2.7 CLR P0.7 SETB P0.7 SJMP QQDP01: CLR P2.7 ACALL BTD CLR P0.7 SETB P0.7qq: MOV A,R1 INC R1 MOV P0,WX MOV P2,A MOV A,WX RL A MOV WX,A DJNZ R7,LOOP1 MOV WX,# 11111110B Mov R7,

44、# 7 Mov R1,# 61HLOOP1:SETB TR1 RETI-计数程序-BTD: MOV R1,# 61H MOV R3,# 0ffh MOV R2,# offh CLR A MOV R4,A MOV R5,A MOV R6,A MOV R7,# 10HBTD0: CLR C MOV A,R3 RLC A MOV R3,A MOV A,R2 RLC A MOV R2,A MOV A,R6 ADDC A,R6 DA A MOV R6,A MOV A,R5 ADDC A,R5 DA A MOV R5,A MOV A,R4 ADDC A,R4 DA A MOV R4,A DJNZ R7,B

45、TD0 MOV A,R4 SWAP A ANL A,# 0FH MOV R1,A INC R1 MOV A,R4 ANL A,# 0FH MOV R1,A INC R1 MOV A,R5 SWAP A ANL A,# 0FH MOV R1,A INC R1 MOV A,R5 ANL A,# 0FH MOV R1,A INC R1 MOV A,R6 SWAP A ANL A,# 0FH MOV R1,A INC R1 MOV A,R6 ANL A,# 0FH MOV R1,A INC R1 END开始附录B 程序流程图被测信号频率是否很低Y改参考信号为高电平N赋位选信号赋位选信号令R7=7令R7

46、=7YYNN设置中断清计数器调测周程序送位选信号送显示信号右移位选信号R7是否为0?设置中断清计数器调计数程序送位选信号送显示信号右移位选信号R7是否为0?结束附录C 程序原理图参考文献1 辛友顺 ,胡永生.单片机应用系统设计与实现.福建:福建科学技术出版社,2006:2482 毛谦敏,吴洪谭.单片机原理及应用系统设计.北京:国防工业出版社,2005:1633 曾日波. 多功能数字电子钟系统的设计与实现. 乐山师报,2004-12:234 卢超. 基于单片机的数字电子钟的设计与制作家庭电子.大庆师范学院学报 ,2006-10:615 冯伯翰,邱志明. 基于集成电路的数字时钟制作.科技信息,20

47、05-9:226 邵兰. 简易数字钟电路设计基本思路.理论研究, 2007-6:337 海丹.具有秒表和闹铃时间显示的数字时钟.实用影音技术,2004-5:808 朱传琴. 浅谈多功能数字钟的设计.山东电力高等专科学校学报,2005,8:719 胡乾等.单片微型计算机的原理及应用.武汉:华中科技大学出版社,1997:13310 万福军.单片微机原理系统设计与应用.合肥:中国科学技术大学出版社,2001:20111 涂时亮,张友德。单片微机MCS-51用户手册。上海:复旦大学出版社,1990:16712 李朝青.单片机原理及接口技术.第二版.北京:北京航空航天大学出版社,1996:22313 高

48、海生,杨文涣.单片机应用技术大全.成都:西南交通大学出版社,1996:19314 刘文涛,基于C51语言编程的MCS-51单片机实用教程.北京:原子能出版社,1997:10115 高峰.单片微型计算机原理与接口技术.北京:科学出版社,2003:25716 肖洪兵. 跟我学用单片机. 北京:北京航空航天大学出版社,2002.817 Bjarne Stroustrup.The C+ Programming Language.Special Edition.200118 Bruce Eck el.Thinking in C+.Prentice Hall Inc,200119 Brian W Kern

49、ighan,Dennis M RitchieThe C Programming LanguageM,200420 KyungbukPtype Technology for Large Size Low TemperaturePolySi TFTLCDs2000:1 1161 11921 Daniel P Bovet,Marco CesatiUnderstanding the Linux Kel-nelM0Reilly,200022 李广弟,单片机基础,北京:北京航空航天大学出版社,2001,566423 马忠梅等单片机的C语言应用程序设计北京航空航天出版社199924 窦震中PIC系列单片机原

50、理和程序设计北京:北京航空航天大学出版社,199825 张友德,谢伟毅 . 单片机原理与应用技术 . 北京: 清华大学出版社,2004致谢三个月的时间很快过去了,本篇论文也已初步完成。在这里首先要感谢院、系领导给予的大力支持,为本次设计提供了良好的设计环境和必要的设计装备,特别要感谢指导老师付巍老师给予的悉心指导和不厌其烦的热情帮助,付老师以其渊博的知识、严谨的治学态度、开拓进取的精神和高度的责任心,给我的学习、工作、生活以很大的影响,并将永远激励我奋发向上。在此谨向导师表示最衷心的感谢、并致以崇高的敬意!感谢答辩组的各位老师在炎热的天气下为我们所作的各种工作和对我们论文所作的批评斧正。另外,衷心感谢本文所引文献的作者和编者们。第31页 共31页

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

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!