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

多功能數字鐘Verilog代碼Quartus仿真

3小時前
96
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點資訊討論

2-240111100230649.doc

共1個文件

名稱:多功能數字鐘Verilog代碼Quartus仿真

軟件:Quartus

語言:Verilog

代碼功能:

一、設計任務及要求

數字鐘是一種利用數字電子技術實現時分秒計時的裝置,數字鐘相比機械鐘具有更高的準確性和直觀性,因此得到了更加廣泛的使用。數字鐘從原理上講是一種典型的數字電路,包括了組合邏輯電路時序邏輯電路。這次設計就是基于 EDA/SOPC 系統(tǒng)開發(fā)平臺和八位數碼管顯示模塊,運用 Quartus Ⅱ開發(fā)軟件,設計一個多功能數字鐘。

二、設計原理

多功能數字鐘應該具有的功能:顯示“時-分-秒”。整個數字鐘的工作應該是在 1Hz 信號的作用下進行,這樣每來一個時鐘信號,秒增加 1 秒,當秒從 59 秒跳轉到 00 秒時,分鐘增加 1 分,同時當分鐘從 59 分跳轉到 00 分時,小時增加 1 小時,小時的范圍是從 0~23 時。復位后全部顯示 00-00-00。在設計中為了顯示的方便,分鐘和秒鐘(顯示的范圍都是從 00~59),小時(00~23)的十位和個位都應該采用十進制計數器。

1、設置“啟/?!卑粹o和“復位”按鈕:

“啟/停”按鈕 S1 的使用方法:按一下“啟/?!卑粹o,啟動數字鐘開始計時,再按一下“啟/?!卑粹o,計時暫停。

“復位”按鈕 S2 用來使數字鐘清 0,在數字鐘計時過程中“復位”按鈕無效,可以參考手機的秒表。(開發(fā)箱的按鈕按下為 0,彈起為 1)原理框圖如下:

QQ圖片20240111095658.png

2、數碼管譯碼顯示電路:

數字鐘顯示范圍 00-00-00~23-59-59,高位在左邊,低位在右邊,數碼管顯示需要經過 BCD-七段數碼管譯碼。上電后,顯示 00-00-00,利用兩個按鈕 S1、S2 控制數字鐘的計時。

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

演示視頻:

設計文檔:

1. 工程文件

2. 程序文件

3. 程序編譯

4. RTL圖

5. 管腳分配

6. 仿真圖

6.1 分頻模塊仿真

6.2 按鍵消抖模塊仿真

6.3 計時模塊仿真

其中F表示“-”在數碼管譯碼模塊中F被譯碼顯示為“-”

6.4 數碼管譯碼掃描模塊仿真

部分代碼展示:

module?digital_clock(
input?CLK,//50MHz
input?CP,//1000Hz
input?S1,//啟動、停止按鈕
input?S2,//復位按鈕,在數字鐘計時過程中“復位”按鈕無效
output?[2:0]?SEL,//數碼管選擇控制端
output?[6:0]?DIG//七段數碼管ABCDEFG
);
wire?clk_1Hz;
wire?[31:0]?hour_mim_sec;//時分秒
wire?S1_key;
wire?S2_key;
wire?clk_1000Hz;
//分頻器,1000Hz分頻到1Hz
div_1Hz?i_div_1Hz(
.?CLK(CLK),
.?CP(clk_1000Hz),//1000Hz
.?clk_1000Hz(clk_1000Hz),
.?clk_1Hz(clk_1Hz)//輸出1Hz
);
//按鍵消抖模塊
key_jitter?i_key_S1(
.?clkin(CLK),?????
.?key_in(S1),//輸入
.?key_value(S1_key)//消抖后按鍵
);

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

  • 2-240111100230649.doc
    下載

相關推薦