名稱(chēng):Quartus 8位頻率計(jì)的設(shè)計(jì)VHDL代碼實(shí)驗(yàn)箱
軟件:Quartus
語(yǔ)言:Verilog
代碼功能:
8位頻率計(jì)的設(shè)計(jì)與實(shí)現(xiàn)
實(shí)驗(yàn)?zāi)康?設(shè)計(jì)并制作一個(gè)8位頻率計(jì)
實(shí)驗(yàn)內(nèi)容:根據(jù)頻率的定義和頻率測(cè)量的基本原理,測(cè)定信號(hào)的頻率必須有一個(gè)脈寬為秒的輸入信號(hào)脈沖計(jì)數(shù)允許的信號(hào):1秒計(jì)數(shù)結(jié)束后,計(jì)數(shù)值被鎖入鎖存器,計(jì)數(shù)器清0,為下一測(cè)頻計(jì)數(shù)周期作好準(zhǔn)備。
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在實(shí)驗(yàn)箱驗(yàn)證,實(shí)驗(yàn)箱如下,其他實(shí)驗(yàn)箱可以修改管腳適配:
演示視頻:
設(shè)計(jì)文檔:
1. 工程文件
2. 程序文件
3. 程序運(yùn)行
管腳分配
RTL圖
4. 程序仿真
4.1 整體仿真圖
4.2 控制模塊仿真圖
4.3 計(jì)數(shù)器模塊仿真圖
4.4 鎖存器模塊仿真圖
5.5 顯示模塊仿真圖
部分代碼展示:
LIBRARY?ieee; ???USE?ieee.std_logic_1164.all; ???USE?ieee.std_logic_unsigned.all; ??? --控制模塊 ENTITY?Frq_Ctrl?IS ???PORT?( ??????clk??:?IN?STD_LOGIC;--時(shí)鐘1000Hz ??????en???:?OUT?STD_LOGIC;--使能--1S的閘門(mén)信號(hào) ??????rst??:?OUT?STD_LOGIC;--清零 ??????lat??:?OUT?STD_LOGIC--鎖存 ???); END?Frq_Ctrl; ARCHITECTURE?trans?OF?Frq_Ctrl?IS ???SIGNAL?count?:?integer?:=?0; ??? BEGIN ???--計(jì)數(shù)器0~1050 ???PROCESS?(clk) ???BEGIN ??????IF?(clk'EVENT?AND?clk?=?'1')?THEN ?????????IF?(count?=?1050)?THEN--為減小仿真時(shí)間,計(jì)數(shù)值減小1000倍,以下同理 ????????????count?<=?0; ?????????ELSE ????????????count?<=?count?+?1; ?????????END?IF; ??????END?IF; ???END?PROCESS; --使能??? ???PROCESS?(clk) ???BEGIN ??????IF?(clk'EVENT?AND?clk?=?'1')?THEN--50_00 ?????????IF?(count?<?999)?THEN--1秒的使能信號(hào),在1s內(nèi)計(jì)數(shù)脈沖數(shù)就是頻率值 ????????????en?<=?'1'; ?????????ELSE ????????????en?<=?'0'; ?????????END?IF; ??????END?IF; ???END?PROCESS; ??? ???--鎖存 ???PROCESS?(clk) ???BEGIN ??????IF?(clk'EVENT?AND?clk?=?'1')?THEN--計(jì)數(shù)值減小1000倍,以下同理 ?????????IF?(count?<?1020?AND?count?>?1010)?THEN ????????????lat?<=?'1'; ?????????ELSE ????????????lat?<=?'0'; ?????????END?IF; ??????END?IF; ???END?PROCESS; ??? ???--清零 ???PROCESS?(clk) ???BEGIN ??????IF?(clk'EVENT?AND?clk?=?'1')?THEN--計(jì)數(shù)值減小1000倍 ?????????IF?(count?<?1040?AND?count?>?1030)?THEN ????????????rst?<=?'1'; ?????????ELSE ????????????rst?<=?'0'; ?????????END?IF; ??????END?IF; ???END?PROCESS; ??? ??? END?trans;
點(diǎn)擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=421