在FPGA上用VHDL实现数字频率计实验报告

在FPGA上用VHDL实现数字频率计实验报告

ID:41713296

大小:231.73 KB

页数:14页

时间:2019-08-30

在FPGA上用VHDL实现数字频率计实验报告_第1页
在FPGA上用VHDL实现数字频率计实验报告_第2页
在FPGA上用VHDL实现数字频率计实验报告_第3页
在FPGA上用VHDL实现数字频率计实验报告_第4页
在FPGA上用VHDL实现数字频率计实验报告_第5页
资源描述:

《在FPGA上用VHDL实现数字频率计实验报告》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库

1、数字系统设计实验报告一、设计要求:1、(1)频率测量范围lOHz^lMHz(2)量程自动转换,量程分为lOKHz(Is)>lOOKHz(0.1s).1MHz(10ms)三档。转换规则如下:当读数大于9999时,频率计处于超量程状态,下一次测量时,量程自动增大一档;当读数小于0999时,频率计处于欠量程状态,下一次测量时,量程自动减小一档(3)数据采用记忆显示方式,即计数过程屮不显示数据,待计数过程结束以后,显示计数结果,并将此显示结果保持到下一次计数结束。(4)用发光二极管显示量程二、方案选则1测量原理:当预置门控信号为高电平时,启

2、动计数器,被测信号(频率为fx)计数当预置门控信号为低电平时,关闭计数器设在一次预置门控时间Tg内对被测信号计数值为Nx,则fx=Nx/Tg2具体方案:本设计中将2MIk的时钟分三次频,分別作为防抖电路的周期信号、显示模块片选信号、计数及锁存模块闸门信号。防抖电路滤去窄波,显示模块用模4计数器來分别输出四位测量结果。计数器通过在0.Is内对输入信号的髙电平(发生期)进行计数来得出结果,并且为了达到换挡目的,测量时计六位数,通过结果选择档位进行输出。二、原理图三、总体电路图>*四.流程图8■:•MlI-m9m*Gp«11CO-:Ft?

3、•WO6M35WX35decn»(20)o.gapC<^h[3.0】阿曲6问s卩50如卩5・52州:Asho<05pop.5创35邮5测3)1•1I1•••Ml五、设计清单1、防抖电路LIBRARYTEEE;USEIEEE.STD_L0GIC_1164.ALL;USEIEEE.STDLOGICARITH.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYdebounceISPORT(key,cp:INSTDLOGIC;—复位键imp:OUTSTDLOGIC);--去掉窄波后输岀ENDdebounce;

4、ARCHITECTUREbaseOFdebounceISSIGNALql,q2:STD_L0GIC;BEGTNPROCESS(cp)BEGINIFcpJeventANDcp二T'THENq2<=ql;ql<=key;ENDIF;ENDPROCESS;imp<=qlANDNOTq2;ENDbase;时序仿真波形:Name:20.0nsi—j40.0nsI60.0nsI80.0ns100.0ns120.0nsi140.0ns1160.0ns180.0niiuk1^-key0Acp0L/imp12、分频电路LIBRARYIEEE;USEI

5、EEE.STD_LOGIC_1164.ALL;USEIEEE.STDLOGICSIGNED.ALL;MMENTITYdividefre4ISP0RT(cp_2m:TNSTDJ.OGTC;—2MHzcpl:OUTSTD_LOGIC;—200Hzcp2:OUTSTD_LOGIC;—25Hzcp3:OUTSTDLOGIC);—5HzENDdividefre4;ARCHITECTUREbehaviorOFdividefredISSIGNALtout:INTEGERRANGE0TO4999;—5000分频SIGNALtoutl:INTEGER

6、RANGE0TO7;--8分频SIGNALtout2:INTEGERRANGE0TO39;--40分频SIGNALcp_l:STD_LOGTC;SIGNALcp_2:STD_LOGIC;SIGNALcp3:STDLOGIC;SIGNALcp:STD_LOGIC;BEGINPROCESS(cp2m)-分出400Hz时钟BEGTNIF(cp2nfeventANDcp2m=,f)THENIFtout=4999THENtout<=0;ELSEtout<=tout+l;ENDIF;IFtout=2499THENcp<=0,;ELSEcp<=1

7、';ENDTF;ENDIF;ENDPROCESS;PROCESS(cp)—200Hz吋钟BEGINIF(cp'eventANDcp二'1')TI1ENcp1<=NOTcp1;ENDIF;ENDPROCESS;PROCESS(cp_l)—25Hz时钟和5HzBEGINlF(cpfeventANDcp1二'l')THENIFtout1=7THENtoutl<=0;ELSEtoutl<=toutl+l;ENDIF;IFtoutl=3THENcp2<=f;ELSIFtout1=7THENcp_2<二'0,;—8分频得25HzENDIF;IF

8、tout2=39THENtout2<=0;一40分频得5HzELSEtout2<=tout2+l;ENDIF;IFtout2=39THENcp3<=f;ELSTFtout2=19THENcp_3<=,05;ENDIF;ENDIF;EN

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。