基于cpld实现的dds频率计

基于cpld实现的dds频率计

ID:3144006

大小:149.50 KB

页数:12页

时间:2017-11-19

基于cpld实现的dds频率计_第1页
基于cpld实现的dds频率计_第2页
基于cpld实现的dds频率计_第3页
基于cpld实现的dds频率计_第4页
基于cpld实现的dds频率计_第5页
资源描述:

《基于cpld实现的dds频率计》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于STC89C51和CPLD实现的DDS与频率计键盘输入DDSSTC89C51LCD1602显示电路频率计系统框图功能描述:以STC89C51为控制核心,实现任意频率值fa(小于10KHz)的输入,经单片机出来后,生成相应的频率字,然后送给DDS模块,DDS模块开始工作,生成以频率值fs;但键盘测频键按下后,单片机控制频率计,让其开始控制,频率计输出值送回单片机处理,得出测量到的频率值fc,最后单片机控制LCD1602显示人为输入的频率值fa和频率计测得的频率值fc,两个值的差异可以直观的显示出系统的误差。基于CPLD/FPG

2、A的DDS原理图如下:基于CPLD/FPGA的频率计的原理图如下:DDS模块代码:(1)MUX832LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYMUX832ISPORT(DATAINN:INSTD_LOGIC_VECTOR(7DOWNTO0);clk:instd_logic;DATAOUTT:OUTSTD_LOGIC_VECTOR(31DOWNTO0);SELL:INSTD_LOGIC_VECTOR(1DOWNTO0));ENDMUX832;ARCHITECTUREbehavOFMU

3、X832ISBEGINPROCESS(SELL,DATAINN,clk)BEGINifclk'eventandclk='1'thenCASESELLISWHEN"00"=>DATAOUTT(7DOWNTO0)<=DATAINN;WHEN"01"=>DATAOUTT(15DOWNTO8)<=DATAINN;WHEN"10"=>DATAOUTT(23DOWNTO16)<=DATAINN;WHEN"11"=>DATAOUTT(31DOWNTO24)<=DATAINN;ENDCASE;endif;ENDPROCESS;ENDbehav;

4、(2)32位加法器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYADDER32BISPORT(A:INSTD_LOGIC_VECTOR(31DOWNTO0);B:INSTD_LOGIC_VECTOR(31DOWNTO0);S:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDADDER32B;ARCHITECTUREbehavOFADDER32BISBEGINS<=A+B;ENDbehav;(3)32位寄

5、存器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;ENTITYREG32BISPORT(LOAD:INSTD_LOGIC;DIN:INSTD_LOGIC_VECTOR(31DOWNTO0);DOUT:OUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDREG32B;ARCHITECTUREbehavOFREG32BISBEGINPROCESS(LOAD,DIN)beginIFLOAD'EVENTANDLOAD='1'THENDOUT<=DIN;ENDIF;ENDPROCESS;E

6、NDbehav;频率计模块代码:(1)标准频率计数器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYBZHHISPORT(BCLK:INSTD_LOGIC;--FsBENA:INSTD_LOGIC;CLR:INSTD_LOGIC;--清零BZQ:inOUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDBZHH;ARCHITECTUREbehavOFBZHHISBEGINPROCESS(BCLK,CLR)--标

7、准频率计数开始BEGINIFCLR='1'THENBZQ<=(OTHERS=>'0');ELSIFBCLK'EVENTANDBCLK='1'THENIFBENA='1'THENBZQ<=BZQ+1;ENDIF;ENDIF;ENDPROCESS;ENDbehav;(2)待测频率计数器LIBRARYIEEE;USEIEEE.STD_LOGIC_1164.ALL;USEIEEE.STD_LOGIC_UNSIGNED.ALL;ENTITYTTFFISPORT(TCLK:INSTD_LOGIC;--FsENA:INSTD_LOGIC;CL

8、R:INSTD_LOGIC;--清零TSQ:inOUTSTD_LOGIC_VECTOR(31DOWNTO0));ENDTTFF;ARCHITECTUREbehavOFTTFFISBEGINPROCESS(TCLK,CLR,ENA)BEGINIFCLR='1'TH

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

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

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