名稱:多功能數(shù)字鐘Verilog代碼vivado? basys3開發(fā)板
軟件:vivado
語言:Verilog
代碼功能:
多功能數(shù)字鐘
用Verilog語言設(shè)計(jì)一個(gè)多功能數(shù)字鐘,數(shù)字鐘具有下述功能:
(1)計(jì)時(shí)功能:包括時(shí)、分、秒的計(jì)時(shí)。
(2)定時(shí)與鬧鐘功能:能在設(shè)定的時(shí)間發(fā)出鬧鈴音。
(3)校時(shí)功能:對(duì)小時(shí)、分鐘和秒能手動(dòng)調(diào)整以校準(zhǔn)時(shí)間。
(4)整點(diǎn)報(bào)時(shí)功能:每逢整點(diǎn),產(chǎn)生“嘀”的報(bào)時(shí)音。
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在basys3開發(fā)板驗(yàn)證,basys3開發(fā)板如下,其他開發(fā)板可以修改管腳適配:
演示視頻:
設(shè)計(jì)文檔:
1. 工程文件
2. 程序文件
3. 程序編譯
4. RTL圖
5. 管腳分配
6. Testebnch
7. 仿真圖
部分代碼展示:
`timescale?1?ns/?1?ns module?Digital_clock_vlg_tst(); reg?clk_in; reg?key_0; reg?key_1; reg?key_2; reg?key_3; //?wires??????????????????????????????????????????????? wire?bell_out; wire?[5:0]??bit_select; wire?[2:0]??led_alarm_time; wire?[2:0]??led_jishi_time; wire?[3:0]??led_mode; wire?[7:0]??seg_select; //?assign?statements?(if?any)?????????????????????????? Digital_clock?i1?( //?port?map?-?connection?between?master?ports?and?signals/registers??? .bell_out(bell_out), .bit_select(bit_select), .clk_in(clk_in), .key_0(key_0), .key_1(key_1), .key_2(key_2), .key_3(key_3), .led_alarm_time(led_alarm_time), .led_jishi_time(led_jishi_time), .led_mode(led_mode), .seg_select(seg_select) ); //input?key_0,//模式設(shè)置按鍵--4'd0:計(jì)時(shí),4'd1:鬧鐘 //input?key_1,//設(shè)置修改 //input?key_2,//修改確認(rèn) //input?key_3,//修改時(shí)分秒,鬧鐘關(guān)閉 initial???????????????????????????????????????????????? begin?????????????????????????????????????????????????? key_0=1;? key_1=1;? key_2=1;? key_3=1;? #100; //計(jì)時(shí) repeat(2)?begin key_1=0;?//設(shè)置修改 #10000; key_1=1;??? #10000; key_3=0;?//修改時(shí) #10000; key_3=1;??? #10000; key_3=0;?//修改時(shí) #10000; key_3=1;??? #10000; key_2=0;?//修改確認(rèn) #10000; key_2=1;??? #10000; key_3=0;?//修改分 #10000; key_3=1;??? #10000; key_3=0;?//修改分 #10000; key_3=1;??? #10000; key_2=0;?//修改確認(rèn) #10000; key_2=1;??? #10000; key_3=0;?//修改秒 #10000; key_3=1;??? #10000; key_3=0;?//修改秒 #10000; key_3=1;??? #10000; key_2=0;?//修改確認(rèn) #10000; key_2=1;??? #10000; key_0=0;?//切換模式 clk_in=0; #10;??????????????????????????????????????????? end?????????????????????????????????????????????????? endmodule
點(diǎn)擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=459