名稱:9999秒以內(nèi)任意倒計(jì)時(shí)器,倒計(jì)完成有LED提示Verilog代碼ISE basys2開(kāi)發(fā)板
軟件:ISE
語(yǔ)言:Verilog
代碼功能:9999秒以內(nèi)任意倒計(jì)時(shí)器,倒計(jì)完成有LED提示
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在?basys2開(kāi)發(fā)板?驗(yàn)證,?basys2開(kāi)發(fā)板?如下,其他開(kāi)發(fā)板可以修改管腳適配:
演示視頻:
設(shè)計(jì)文檔:
1. 工程文件
2. 程序文件
3. 程序編譯
4. RTL圖
5. testbench
6. 仿真圖
整體仿真圖
分頻模塊
起始時(shí)間設(shè)置模塊
倒計(jì)時(shí)模塊
顯示模塊
部分代碼展示:
//時(shí)間設(shè)置 module?time_set( input?clk_1Hz,//1Hz時(shí)鐘 input?s_key,//千位按鍵 input?h_key,//百位按鍵 input?t_key,//十位按鍵 input?o_key,//個(gè)位按鍵 output?[3:0]s_set,//千位 output?[3:0]h_set,//百位 output?[3:0]t_set,//十位 output?[3:0]o_set?//個(gè)位 ); reg?[3:0]s_set_time=4'd0;//千位 reg?[3:0]h_set_time=4'd0;//百位 reg?[3:0]t_set_time=4'd0;//十位 reg?[3:0]o_set_time=4'd0;//個(gè)位 always@(posedge?clk_1Hz) if(s_key==1)//按下按鍵設(shè)置千位 if(s_set_time==4'd9)//計(jì)數(shù)到9回0 s_set_time<=4'd0; else s_set_time<=s_set_time+4'd1;//計(jì)數(shù) always@(posedge?clk_1Hz) if(h_key==1)//按下按鍵設(shè)置百位 if(h_set_time==4'd9)//計(jì)數(shù)到9回0 h_set_time<=4'd0; else h_set_time<=h_set_time+4'd1;//計(jì)數(shù) always@(posedge?clk_1Hz) if(t_key==1)//按下按鍵設(shè)置十位 if(t_set_time==4'd9)//計(jì)數(shù)到9回0 t_set_time<=4'd0; else t_set_time<=t_set_time+4'd1;//計(jì)數(shù) always@(posedge?clk_1Hz) if(o_key==1)//按下按鍵設(shè)置個(gè)位 if(o_set_time==4'd9)//計(jì)數(shù)到9回0 o_set_time<=4'd0; else o_set_time<=o_set_time+4'd1;//計(jì)數(shù) //輸出 assign?s_set=s_set_time;//千位 assign?h_set=h_set_time;//百位 assign?t_set=t_set_time;//十位 assign?o_set=o_set_time;//個(gè)位
點(diǎn)擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=594