• 方案介紹
  • 附件下載
  • 相關推薦
申請入駐 產業(yè)圖譜

脈沖按鍵電話按鍵顯示器VHDL代碼AX301開發(fā)板Quartus

05/30 14:14
188
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

2-231212195U4936.doc

共1個文件

名稱:脈沖按鍵電話按鍵顯示器VHDL代碼AX301開發(fā)板Quartus

軟件:Quartus

語言:VHDL

代碼功能:

4、脈沖按鍵電話按鍵顯示器

設計一個具有8位顯示的電話按鍵顯示器,要求:

(1)能準確地反映按鍵數(shù)字;

(2)顯示器顯示從低位向高位前移,逐位顯示按鍵數(shù)字,最低位為當前輸入位;

(3)*設置一個“重撥”鍵,按下此鍵,能顯示最后一次輸入的電話號碼;

(4)*掛機2秒后能消除顯示。

FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com

本代碼已在AX301開發(fā)板驗證,開發(fā)板如下,其他開發(fā)板可以修改管腳適配:

AX301開發(fā)板照片.png

演示視頻:

設計文檔:

1. 工程文件

2. 程序文件

3. 程序編譯

4. 管腳分配

5. RTL圖

6. Testebnch

7. 仿真圖

整體仿真圖

按鍵消抖模塊

控制模塊

顯示模塊

部分代碼展示:

LIBRARY?ieee;
???USE?ieee.std_logic_1164.all;
--電話按鍵顯示
ENTITY?telephone?IS
???PORT?(
??????clk??????:?IN?STD_LOGIC;
??????key1_in??:?IN?STD_LOGIC;
??????key2_in??:?IN?STD_LOGIC;
??????recall???:?IN?STD_LOGIC;--重播鍵
??????close????:?IN?STD_LOGIC;--掛機鍵
??????DIG??????:?OUT?STD_LOGIC_VECTOR(5?DOWNTO?0);--數(shù)碼管位選
??????SEG??????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0)--數(shù)碼管段選
???);
END?telephone;
ARCHITECTURE?trans?OF?telephone?IS
???COMPONENT?display?IS
??????PORT?(
?????????clk??????:?IN?STD_LOGIC;
?????????number???:?IN?STD_LOGIC_VECTOR(3?DOWNTO?0);
?????????tele_num?:?IN?STD_LOGIC_VECTOR(23?DOWNTO?0);
?????????DIG??????:?OUT?STD_LOGIC_VECTOR(5?DOWNTO?0);
?????????SEG??????:?OUT?STD_LOGIC_VECTOR(7?DOWNTO?0)
??????);
???END?COMPONENT;
???
???COMPONENT?xiaodou?IS
??????PORT?(
?????????clkin????:?IN?STD_LOGIC;
?????????key_in???:?IN?STD_LOGIC;
?????????key_neg??:?OUT?STD_LOGIC
??????);
???END?COMPONENT;
???
???COMPONENT?control?IS
??????PORT?(
?????????clk??????:?IN?STD_LOGIC;
?????????rst_n????:?IN?STD_LOGIC;
?????????key0?????:?IN?STD_LOGIC;
?????????key1?????:?IN?STD_LOGIC;
?????????key2?????:?IN?STD_LOGIC;
?????????key3?????:?IN?STD_LOGIC;
?????????key4?????:?IN?STD_LOGIC;
?????????recall???:?IN?STD_LOGIC;
?????????close????:?IN?STD_LOGIC;
?????????number???:?OUT?STD_LOGIC_VECTOR(3?DOWNTO?0);
?????????tele_num?:?OUT?STD_LOGIC_VECTOR(23?DOWNTO?0)
??????);
???END?COMPONENT;
???
???
???SIGNAL?number????:?STD_LOGIC_VECTOR(3?DOWNTO?0);--輸入數(shù)量
???SIGNAL?tele_num??:?STD_LOGIC_VECTOR(23?DOWNTO?0);--電話號碼
???SIGNAL?key0??????:?STD_LOGIC;
???SIGNAL?key1??????:?STD_LOGIC;
???SIGNAL?key2??????:?STD_LOGIC;
???SIGNAL?key3??????:?STD_LOGIC;
???SIGNAL?key4??????:?STD_LOGIC;
BEGIN
???--消抖模塊
???i1_xiaodou?:?xiaodou
??????PORT?MAP?(
?????????clkin????=>?clk,
?????????key_in???=>?key1_in,
?????????key_neg??=>?key1
??????);
???
???
???--消抖模塊
???i2_xiaodou?:?xiaodou
??????PORT?MAP?(
?????????clkin????=>?clk,
?????????key_in???=>?key2_in,
?????????key_neg??=>?key2
??????);
???
???
???--控制模塊
???i_control?:?control
??????PORT?MAP?(
?????????clk???????=>?clk,
?????????rst_n?????=>?'1',--復位
?????????key0??????=>?'0',
?????????key1??????=>?key1,
?????????key2??????=>?key2,
?????????key3??????=>?'0',
?????????key4??????=>?'0',
?????????recall????=>?recall,--重播鍵
?????????close?????=>?close,--掛機鍵
?????????number????=>?number,--輸入數(shù)量
?????????tele_num??=>?tele_num--電話號碼
??????);
???
???
???
--顯示模塊
???i_display?:?display
??????PORT?MAP?(
?????????clk???????=>?clk,
?????????number????=>?number,--輸入數(shù)量
?????????tele_num??=>?tele_num,--電話號碼
?????????DIG???????=>?DIG,--數(shù)碼管位選
?????????SEG???????=>?SEG--數(shù)碼管段選
??????);
???
END?trans;

點擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=329

  • 2-231212195U4936.doc
    下載

相關推薦