名稱:12小時數(shù)字鐘Verilog代碼Quartus? 開發(fā)板
軟件:Quartus
語言:Verilog
代碼功能:
12小時數(shù)字鐘
1. 設(shè)計一個能顯示1/10秒、秒、分、時的12小時數(shù)字鐘。
2. 熟練掌握各種計數(shù)器的使用。
3. 能用計數(shù)器構(gòu)成十進(jìn)制、六十進(jìn)制、十二進(jìn)制等所需進(jìn)制的計數(shù)器。
4. 能用低位的進(jìn)位輸出構(gòu)成高位的計數(shù)脈沖。
5.完成全部流程:設(shè)計規(guī)范文檔、模塊設(shè)計、代碼輸入、功能仿真、約束與綜合、布局布線、時序仿真、下載驗證等。
教學(xué)提示:
1、時鐘源使用頻率為0.1Hz的連續(xù)脈沖。
2、設(shè)置兩個按鈕,一個供“開始”及“停止”用,一個供系統(tǒng)“復(fù)位”用。
3、時鐘顯示使用數(shù)碼管顯示。
4、“時顯示”部分應(yīng)注意12點后顯示1點。
5、注意各部分的關(guān)系,由低位到高位逐級設(shè)計、調(diào)試。
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在開發(fā)板驗證,開發(fā)板如下,其他開發(fā)板可以修改管腳適配:
演示視頻:
設(shè)計文檔:
1. 工程文件
2. 程序文件
3. 程序編譯
4. 管腳分配
5. RTL圖(電路結(jié)構(gòu)圖)
6. testbench
7. 仿真圖
部分代碼展示:
//十進(jìn)制 module?counter_10 ( input?clk,//時鐘 input?reset_key,//系統(tǒng)“復(fù)位”用 output?[3:0]?cnt,//計數(shù)值 output?reg?cout//計滿進(jìn)位 ); parameter?num=4'd10; reg?[3:0]?cnt_buf=4'd0;//計數(shù)值 always@(posedge?clk?or?negedge?reset_key) if(reset_key==0)begin//系統(tǒng)“復(fù)位”用 cnt_buf<=0; cout<=0; end else//正常計數(shù) if(cnt_buf<num-4'd1)begin cnt_buf<=cnt_buf+4'd1;//計數(shù)0——9 cout<=0; end else?begin cnt_buf<=4'd0;//計數(shù)0——9 cout<=1; end assign?cnt=cnt_buf; endmodule
點擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=511