ImageVerifierCode 换一换
格式:DOCX , 页数:57 ,大小:535.47KB ,
资源ID:6697616      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6697616.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(等精度数字频率计的设计1.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

等精度数字频率计的设计1.docx

1、等精度数字频率计的设计1等精度数字频率计的设计李艳秋摘 要基于传统测频原理的频率计的测量精度将随着被测信号频率的下降而降低,在实用中有很大的局限性,而等精度频率计不但有较高的测量精度,而且在整个测频区域内保持恒定的测试精度。运用等精度测量原理,结合单片机技术设计了一种数字频率计,由于采用了屏蔽驱动电路及数字均值滤波等技术措施,因而能在较宽定的频率范围和幅度范围内对频率,周期,脉宽,占空比等参数进行测量,并可通过调整闸门时间预置测量精度。选取的这种综合测量法作为数字频率计的测量算法,提出了基于FPGA 的数字频率计的设计方案。给出了该设计方案的实际测量效果,证明该设计方案切实可行,能达到较高的频

2、率测量精度。 关键词 等精度测量,单片机,频率计,闸门时间,FPGAABSTRACTAlong with is measured based on the traditional frequency measurement principle frequency meter measuring accuracy the signalling frequency the drop but to reduce, in is practical has the very big limitation, but and so on the precision frequency meter not o

3、nly has teaches the high measuring accuracy, moreover maintains the constant test precision in the entire frequency measurement region. Using and so on the precision survey principle, unified the monolithic integrated circuit technical design one kind of numeral frequency meter, because has used the

4、 shield actuation electric circuit and technical measure and so on digital average value filter, thus could in compared in the frequency range and the scope scope which the width decided to the frequency, the cycle, the pulse width, occupied parameter and so on spatial ratio carries on the survey, a

5、nd might through the adjustment strobe time initialization measuring accuracy. Selection this kind of synthesis measured the mensuration took the digital frequency meter the survey algorithm, proposed based on the FPGA digital frequency meter design proposal. Has produced this design proposal actual

6、 survey effect, proved this design proposal is practical and feasible, can achieve the high frequency measurement precision Keywords Precision survey, microcontroller, frequency meter, strobe time,field programmable gate array摘 要 I 附录A:单片机程序和VHDL程序 33参考文献 56致 谢 57 1 绪论 测量频率是电子测量技术中最常见的测量之一。不少物理量的测量,

7、 如时间、速度等都涉及到或本身可转化为频率的测量。目前, 市场上有各种多功能、高精度、高频率的数字频率计, 但价格不菲。而在实际工程中, 并不是对所有信号的频率测量都要求达到非常高的精度。目前, 有三种常用的数字频率的测量方法: 直接测量法(以下称M法) 、周期测量法(以下称T法) 和综合测量法(以下称M /T法) 。M法是在给定的闸门时间内测量被测信号的脉冲个数, 进行换算得出被测信号的频率。T法是通过测量被测信号一个周期时间计时信号的脉冲个数, 然后换算出被测信号的频率。这两种测量法的精度都与被测信号有关, 因而它们属于非等精度测量法。而M /T法它通过测量被测信号数个周期的时间, 然后换

8、算得出被测信号的频率, 克服了测量精度对被测信号的依赖性。M /T法的核心思想是通过闸门信号与被测信号同步, 将闸门时间控制为被测信号周期长度的整数倍。测量时, 先打开预置闸门, 当检测到被测信号脉冲沿到达时, 标准信号时钟开始计数。预置闸门关闭时, 标准信号并不立即停止计数, 而是等检测到被测信号脉冲沿到达时才停止, 完成被测信号整数周期的测量。测量的实际闸门时间与预置闸门时间可能不完全相同, 但最大差值不超过被测信号的一个周期。2 系统设计方案2.1系统设计方案的选择根据频率计的设计要求,我们可将整个电路系统划分为几个模块,频率测量模块,周期测量模块,脉宽测量模块,和占空比测量模块。标准频

9、率发生电路采用高频率稳定度和高精度的晶镇作为标准频率发生器。如图所示。各模块的实现均有几种不同的设计方案。 图2.1 频率计组成模块框图2.1.1 频率测量模块直接测频法:把被测频率信号经脉冲整形电路处理后加到闸门的一个出入端,只有在闸门开通时间T(以秒计)内,被计数的脉冲送到十进制计数器进行计数;设计数器的值为N,则可得到被测信号频率为f=N/T,经分析,本测量在低频率的相对测量误差较大,即在低频段不能满足本设计的要求。组合测频法:这种方法可以在一定程度上弥补方法(1)中的不足,但是难以确定最佳分测点,且电路实现较复杂。倍频法:是指把频率测量范围分成多个频段,使用倍频技术,根据频段设置倍频系

10、数,将经整形的低频信号进行倍频后在进行测量,对高频段则直接进行测量。倍频法较难实现。等精度测频法:其实现方式可用图2.2来说明。图中,预置门控信号是宽度为TPR的一个脉冲,CNT1和CNT2是两个可控计数器。标准频率信号从CNT1的时钟输出端CLK输入,其频率为fs,经整形后的被测信号从CNT2的时钟输入端CLK输入,设其实际频率为fx;当预置门控信号为高时,经整形后的被测信号的上升沿通过D触发器的Q端同时启动计数器CNT1和CNT2。CNT1和CNT2分别对被测信号(频率为fs)和标准频率信号(频率为fx)同时计数。当预置门信号为低时,随后而至的被测信号的上升沿将两个计数器同时关闭。设在一次

11、预置门时间Tpr内对被测信号的计数值为Nx,对标准信号的计数值为Ns。则下式成立:fx/Nx=fs/Ns由此推得:fx=fs*Nx/Ns图2.2 等精度测频法原理框图若所测频率值为fx,其真实值为fxe,标准频率为fs,一次测量中,由于fx计数的起停时间都是该信号的上跳沿触发的,因此在Tpr时间内对fx的计数Nx无误差,在此时间内的计数Ns最多相差一个脉冲,即fx/Nx=fs/Ns,则下式成立: fxe/Nx=fs/Ns+et 可分别推得 fx=fs*Nx/Ns fxe=fs*Nx/Ns+et 根据相对误差的公式有:fxe/fxe=fxe-fx/fxe 经整理可得到:fxe/fxe=et/Ns

12、因et1,故fxe/fxe1/Ns Ns=Tpr*fs根据以上分析,我们可知等精度测频法具有三个特点:1,相对测量误差与被测频率的高低无关;2,增大Tpr或fs可以增大Ns,减少测量误差,提高测量精度;3,测量精度与预置门宽度和标准频率有关,与被测信号的频率无关,在预置门和常规测频闸门时间相同而被测信号频率不同的情况下,等精度测量法的测量精度不变; 经过综合考虑,结合设计需求,选用第种方案,即用等精度测频法来实现本设计频率测量。2.1.2 周期测量模块直接周期测量法:用被测信号经放大整形后形成的方波信号直接控制计数门控电路,使主门开放时间等于信号周期Tx,时标为Ts的脉冲在主门开放时间进入计数

13、器。设在Tx期间计数值为N,可以根据以下公式来算得被测信号周期:Tx=N*Ts经误差分析,可得结论:用该测量法测量时,被测信号的频率越高,测量误差越大。等精度周期测量法:该方法在测量电路和测量精度上与等精度测量完全相同,只是在进行计算时公式不同,在周期1/T代换频率f即可,其计算公式为Tx=Ts*Ns/Nx从降低电路的复杂度及提高精度(特别是高频)上考虑,本设计拟采用方法测量被测信号的周期。2.1.3 脉宽测量模块在进行脉冲宽度测量时,首先经信号处理电路进行处理,限制只有信号的50%幅度及其以上部分才能输入数字测量部分。脉冲边沿被处理得非常陡峭,然后送入测量计数器进行测量。测量电路在检测到脉冲

14、信号的上升沿时打开计数器,在下降沿是关闭计数器,设脉冲宽度为Twx,计算公式为:Twx=Nx/fs。2.1.4 占空比测量模块 测一次脉冲信号的脉宽,记录其值为Twx1,然后将信号反相,再测一次脉宽并记录起值为Twx2,通过下式计算占空比:占空比=Twx1/(Twx1+Twx2)*100%3 系统总体设计方案等精度数字频率计涉及到的计算包括加,减,乘,除,耗用的资源比较大,用一般中小规模CPLD/FPGA芯片难以实现。因此,我们选择单片机和CPLD/FPGA的结合来实现。电路系统原理框图如图所示,其中单片机完成整个测量电路的测试控制,数据处理和显示输出;CPLD/FPGA完成各种测试功能;键盘

15、信号由AT89C51单片机进行处理,它从CPLD/FPGA读回计数数据并进行运算,向显示电路输出测量结果;显示器电路采用七段LED动态显示,由8个芯片74LS164分别驱动数码管。图3.1 等精度数字频率计电路系统原理框图系统的基本工作方式如下:P0是单片机与FPGA的数据传送通信口,P1口用于键盘扫描,实现各测试功能的转换;P2口为双向控制口。P3口为LED的串行显示控制口;系统设置5个功能键:占空比,脉宽,周期,频率,和复位。7个LED数码管组成测量数据显示器,另一个独立的数码管用于状态显示。BCLK 为测频标准频率为50MHz 信号输入端,由晶体震荡源电路提供。待测信号经放大整形后输入C

16、PLD/FPGA 的TCLK。4 CPLD/FPGA测频专用模块的VHDL程序设计4.1测频模块逻辑结构利用VHDL程序设计的测频模块逻辑结构如图所示,其中有关的接口信号规定如下:TP(P2.7):TF=0 时等精度测频;TF=1 时测脉宽; CLR/TRIG(P2.6):当TF=0 时系统全清零功能;当TF=1 时CLRTRIG 的上跳沿将启动CNT2 ,进行脉宽测试计数; ENDD (P2.4):脉宽计数结束状态信号,ENDD=1计数结束;CHOICE(P3.2):自校/测频选择,CHOICE=1 测频;CHOICE=0自校; START(P2.5):当TF=0 时,作为预置门闸,门宽可通

17、过键盘由单片机控制,START=1时预置门开;当TF=1时,START有第二功能,此时,当START=0时测负脉宽,当START=1时测正脉宽。利用此功能可分别获得脉宽和占空比数据。 EEDN(P2.3):等精度测频计数结束状态信号,EEND=0时计数结束。 SELP2.2(P2.2,P2.1,P2.0):计数值读出选通控制;当SEL2.0=“000”,“001”, “010”. “111”时,将CNT1,CNT2的计数值分8次,每次读出8位,并传达到单片机的P0口。图4.1 测频模块逻辑图4.2 各模块功能和工作步骤如下:4.2.1 测频/测周期的实现被测信号脉冲从CONTRL模块的FIN端

18、输入,标准频率信号从CONTRL 的FSD端输入,CONTRL的CLR是此模块电路的工作初始化信号输入端。在进行频率或周期测量时,其工作步骤如下: 令TF=0,选择等精度测频,然后再CONTRL的CLR端加一正脉冲信号以完成测试电路状态的初始化。 由预置门控信号将CONTRL的START端置高电平,预置门开始定时,此时由被测信号的上沿打开计数器CNT1进行计数,同时使标准频率信号进入计数器CNT2。 预置门定时结束信号把CONTRL的START端置为低电平(由单片机来完成),在被测信号的下一次脉冲的上沿到来时,CNT1停止计数,同时关断CNT2对FS的计数。 计数结束后,CONTRL的EEND

19、端将输出低电平来指示测量计数结束,单片机得到此信号后,即可利用ADRC(P2.2),ADRB(P2.1),ADRA(P2.0)分别读回CNT1 和CNT2的计数值,并根据精度测量公式进行运算,计算出被测信号的频率或周期值。4.2.2 控制部件设计如图所示,当D触发器的输入端START为高电平时,若FIN端来一个上升沿,则Q端变为高电平,导通FIN-CLK1和FSD-CLK2,同时EEND被置为高电平作为标志;当D触发器的输入端START为低电平时,若FIN端输入一个脉冲上沿,则FIN-CLK1与FSD-CLK2的信号通道被切断。图4.2 测频与测周期控制部分电路计数部件设计 图中的计数器CNT

20、1/CNT2是32位二进制计数器,通过DSEL模块的控制,单片机可分4次将其32位数据全部读数。4.2.3 脉冲宽度测量和占空比测量模块设计 根据上述脉宽测量原理,设计如图(CONTRL)所示的电路原理示意图。该信号的上沿和下沿信号对应于未经处理时的被测信号50%幅度时的上沿和下沿.被测信号从FIN端输入,CLR为初始化信号START为工作使能信号.CONTRL2模块的PUL端与GATE的输入端PUL连接.图4.3 脉冲宽度测量原理图测量脉冲宽度的工作步骤如下:1 向CONTRL的CLR端送一个脉冲以便进行电路的工作状态初始化.2 将GATE的CNL端置高电平,表示开始脉冲宽度测量,这时CNT

21、2的输入信号为FSD.3 在被测脉冲的上沿到来时,CONTRL2的PUL端输出高电平,标准频率信号进入计数器CNT2.4 在被测脉冲的下沿到来时,CONTRL2的PUL端输出低电平,计数器CNT2被关断.5 由单片机读出计数器CNT2的结果,并通过上述测量原理公式计算出脉冲宽度.CONTRL2子模块的主要特点是:电路的设计保证了只有CONTRL2被初始化后才能工作,否则PUL输出始终为零.只有在先检测到上沿后PUL才为高电平,然后在检测到下沿时,PUL输出为低电平:ENDD输出高电平以便通知单片机测量计数已经结束:如果先检测到下沿,PUL并无变化;在检测到上沿并紧接一个下沿后,CONTRL2不

22、再发生变化直到下一个初始化信号到来.占空比的测量方法是通过测量脉冲宽度记录CNT2的计数值N1,然后将输入信号反相,再测量脉冲宽度,没得CNT2计数值N2则可以计算出: 占空比=N1/(N1+N2)*100%4.2.4 电路显示模块系统硬件电路中,单片机MCU与FPGA进行数据交换占用了P0口、P1口和P3口,因此数据显示电路的设计采用静态显示的方式,显示电路由8个共阳极七段数码管和8片1位串入8位并出的74LS164芯片组成。 图4.4 显示电路图这种显示方式不仅占用单片机端口少,而且充分利用了单片机的资源,容易掌握其编码规律,简化了软件编程,在实验过程中,也体现出较高的可靠性。数据显示电路

23、如图4.4所示。74LS164是一种8位高速串入/并出的移位寄存器,随着时钟信号的高低变化,串行数据通过一个2输入与门同步的送入,使用独立于时钟的主控复位端让寄存器的输出端变为低电平,并且采用肖特基钳位电路以达到高速运行的目的。并且还具有以下的特点:典型的35MHZ移位频率;异步主控复位;门控串行输入;同步数据传输;采用钳位二极管限制高速的终端;静电放电值大于3500V。 在本系统中,74LS164的连接方式为:74LS164的输出Q0Q7分别接LED数码管的dp、g、f、e、d、c、b、a,并且Q7连接下一个74LS164的A,B端,时钟CLK连接单片机的TXD端,第一片芯片的AB端连接单片

24、机的RXD端,74LS164芯片的主控复位端接高电平VCC。在这种状态下,数码管的编码如下表所示。 4.2.5 数码管的编码表显示数码段 码显示数码段 码00c0h880h10f9h990h20a4hA88h30b0hB83h499hC0c6h592hD0a1h682hE86h70f8hF8eh5 单片机控制与运算程序的设计5.1 AT89C51RC单片机简介AT89C5lRC是在AT89C52基础上开发的新型高档单片机。它的主要特性是:片内含有 32 KB的 Flash程序存储器,擦写周期为 1000次;片内数据存储器内含512字节的RAM;具有可编程32线I/O口(P0,P1,P2和P3口

25、);具有3个可编程定时器T0,T1和T2;中断系统是具有8个中断源、6个中断矢量、2级中断优先权的中断结构;具有一个全双工 UART串行口;低功耗工作方式为空闲模式和掉电模式;具有双数据指针DPTR0和DPTR1;具有3级程序锁定位;具有硬件看门狗定时器WDT;AT89C51RC工作电源为4.05.5V(AT89LV51RC为2.75.5V);AT89C51RC最高工作频率为33MHZ(AT89LV51RC为12MHZ);具有断电标志POF与AT89C52相比,AT89C5lRC具有如下特点:程序存储器由 8 KB增加到32 KB;片内数据存储器由256字节增加到512字节;数据指针由1个增加

26、到2个;增加了看门狗定时器,CPU在执行程序过程中,由于瞬时的干扰使程序陷入死循环环状态,WDT(Watchdog Timer)是使CPU摆脱这种困境而自动恢复的一种方法;退出掉电方式由单纯硬件复位方式增加到硬件复位和中断两种方式;新增加了断电标志POF89C51RC的内部框图 图5.1 89C51RC的内部框图 引脚排列及功能 AT89C51RC有3种封装形式:PDIPPLCC和TQFPPDIP封装的引脚排列如图所示。图5.2 AT89C51RC引脚图口线 P0口8位、漏极开路的双向 1O口。 当使用片外存储器及外扩 IO口时,P0口作为低字节地址数据复用线。在编程时,P0口可用于接收指令代

27、码宇节;在程序校验时,P0口可输出指令字节(这时需要加外部上拉电阻)。 P0口也可作通用I/O口使用但需加上拉电阻变为准双向口。当作为普通输入时,应将 输出锁存器置1 PO口可驱动8个 TTL负载 P1口8位、准双向IO口,具有内部上拉电阻。P1口是为用户准备的 1O双向口。在编程和校验时,可用做输入低8位地址。用做输入时,应先将输出锁存器置1 P1口可驱动4个TTL负载。P1.0 P1.1替代功能引脚替代功能说明P1.0T2定时器2的外部事件输入端;可编脉冲输出端P1.1T2EX定时器 2的捕捉重装触发器输入端定时器2的计数方向控制端P2口8位、准双向 1O口具有内部上位电阻 当使用片外存储

28、器或外扩1O口时P2口输出高8位地址。在编程校验时P2口可接收高字节地址和某些控制信号。 P2口也可作普通IO口使用。用做输入时,应先将输出锁存器置1 P2口可驱动4个TTL负载。 P3口8位、准双向 1O口,具有内部上拉电阻。 P3口可作为普通1O口。用做输入时,应先将输出锁存器置 1在编程校验时P3口接收某些控制信号。它可驱动4个TTL负载。P3口还提供各种替代功能。P3口替代功能P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2(外部中断0)P3.3(外部中断1)P3.4T0(记时器0外部输入)P3.5T1(记时器1外部输入)P3.6(外部数据存储器写选通)P3.7(外部数

29、据存储器读选通)2控制信号线 RST复位输入信号,高电平有效。在振荡器稳定工作时,在RST脚施加两个机器周期(即24个晶振周期)以上的高电平,将器件复位。 VPP外部程序存惜器访问允许信号EA(External Access Enable)。 当信号接地时,对ROM的读操作限定在外部程序存储器,地址为0000HFFFFH;当接地时,对ROM的读操作从内部程序存储器开始,并可延续至外部程序存储器。 在编程时,该引脚可接编程电压(AT89C51的VPP为5V或12V;AT89LV51的VPP为12 V)。在编程校验时,该引脚可接VCC。 片外程序存储器读选通信号用PSEN(Program Stor

30、e Enable),低电平有效。 在片外程序存储器取指期间,当有效时,程序存储器的内容被送至 PO口(数据总线);在访问外部RAM时,无效。 AIE/低字节地址锁存信号 AlE(Address latch Enable)。 在系统扩展时,AlE的下降沿将PO口输出的低8位地址锁存在外接的地址锁存器中,以实现低字节地址和数据的分时传送。此外,ALE端连续输出正脉冲频率为晶振频率的16,可用做外部定时脉冲使用。但要注意,每次访问外RAM时要丢失一个ALE脉冲。在编程期间,该引脚输入编程脉冲()。3电原线 VCC电源电压输入。GND接地。4.外部晶振引线 XTAL1片内振荡器反相放大器和时钟发生线路

31、的输入端。使用片内振荡器时,连接外部石英晶体和微调电容。 XTAL2片内振荡器反相放大器的输出端。当使用片内振荡器时,外接石英晶体 和微调电容。 当使用外部振荡器时,引脚XTAL1接收外振荡器信号,XTAIL2悬空。 AT89C5lRC有两种低功耗节电模式:空闲模式和掉电模式。1空闲模式 应用软件使PCON中的IDLl,系统便可进入空闲模式由于PCON不可位寻址,进入空闲模式可采用如下指令: MOV A,PCON SETB ACC,0 ;IDL=l MOV PCON,A系统进入空闲模式后,CPU处于休眠状态振荡器和片内外围单元(中断系统、定时器、IO口、串行口)仍然有效片内RAM和SFR中的内容保留不变。退出空闲模式有两

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1