欢迎来到天天文库
浏览记录
ID:5930197
大小:641.05 KB
页数:9页
时间:2017-12-29
《等精度频率计相位设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、等精度频率计/相位计设计李月华(宁夏大学新华学院电子信息工程(2)班学号:12011247309)摘要:利用等精度测量原理,设计了一种通过AT89C52单片机和一些基本逻辑电路设计的数字式频率计。设计具有较高的实用性和可靠性。关键词:等精度;频率计;单片机DesignofEqualPrecisionFrequencyMeterliYue-hua(ElectronicInformationEngineeringclass2,XinhuaCollegeofNingxiaUniversity,StudentID:12011247309)Abstract:Usingequalprec
2、isionmeasurementtheory,introduceadesignofequalprecisionfrequencymeterusingsinglechipcomputerAT89C52andbasiclogicelectrocircuit.Thedesignhaspracticabilityanddependability.Keyword:equalprecisionfrequency;frequencymeter;Singlechipcomputer一.设计目的基于传统测频原理的频率计的测量精度将随被测信号频率的下降而降低,即测量精度随被测信号频率的变化而变化
3、,在实用中有很大的局限性,故本次实验就是为了设计一个等精度频率计,它不仅具有较高的测量精度,且在整个频率区能保持恒定的测量精度。二.设计实现一).设计要求1.频率测试功能:测频范围0.1HZ~100MHZ.测频精度:测频全域相对误差恒为百分之一。2.脉宽测试功能:测试范围0.1us~1s,测试精度0.01us。3.占空比测试功能:测试(显示)精度1%~99%。4.相位测试功能:测试范围0~360°,测试精度0.2°。二).设计原理1.主系统设计1)函数发生器输出TTL波形,通过tclk进入fpga;2)测频测相部分由fpga内部完成;3)单片机电路模块:用stm32单片机的按
4、键控制GPIOE口,控制FPGA测频/测相的切换,GPIOF口读取FPGA的数据。4)键盘模块:用stm32键盘的0、1、2、3、4控制fpga的clr,cl,spul的输入,从而起到切换测频/测相的作用。5)显示模块:用stm32上的液晶显示从fpga读取的数据值。2.主系统测频测相原理1)测频首先,进行初始化:单片机发出一个清零信号clr,使两个计数器和D触发器置0,同时D触发器通过信号ena,禁止两个计数器计数。其次,从tclk端接入ttl波形,函数单片机发出允许测频指令,即cl置高,spul置高。读取数据用了一个64-16多路选择器,设置了一个sel端,并用单片机的G
5、PIOE口的3、4端来作控制。图一:等精度测频原理图图二:等精度频率计的硬件电路图测相控制单片机按键,从而改变GPIOE口的0、1、2口的电平值,对fpga进行控制。使spul置'0',切换cl,从而测量tclk的高低电平脉宽。三).单片机的接口部分根据上面原理框图的连接方式,fpga与单片机的接口如下:1、单片机的GPIOF口的1-16位接fpga的16位数据输出端,负责读取测频数据。2、单片机可以通过信号start,了解计数是否结束,以确定何时可以读取数据。3、在测脉宽阶段(spul='0'),EEND的功能与START基本相同,当其由低电平变到高电平时指示脉宽结束。4、
6、GPIOE的3、4端口与sel[1..0]相接,用于控制多路通道的数据选择。当sel为“00”,“01”时,由低16位到高16位读出标准频率计数值;当sel为“10”,“11”时,由低16位到高16位读出待测频率计数值。5、GPIOE的0位接清零信号clr,高定平有效。每一个测频周期开始时,都应该首先清0。6、GPIOE的1、2位分别接控制信号cl与spul。当spul为‘1’时,cl作为预置门控信号,用于测频计数的时间控制;当spul为‘0’时,cl作为测脉宽控制信号。这时,cl若为‘1’,测tclk的高电平脉宽,当cl为‘0’时,测tclk的低电平脉宽。然后分别从data
7、数据端口读出bzh对标准频率的计数。四).时序仿真1.测频时spul='1',clr='0',cl='1',令bclk=50MHZ,tclk是bclk100分频的时钟,仿真结果如下:由仿真波形可以看出:当sel=“00”时,data=1010;当sel=“01”时,data=0;当sel=“10”时,data=10;当sel=“11”时,data=0;由此可以知道,bclk与tclk的计数比值为:1010/10=101;这与实际设定的100分频,即100倍基本吻合,正好多了一个+-1误差。所以仿真结果正
此文档下载收益归作者所有