名稱:電子計時器Verilog代碼遠程云端平臺Quartus
軟件:Quartus
語言:Verilog
代碼功能:
電子計時器要求:
同時可以用一個開關(guān)控制來記錄三組時間并顯示;
三組記錄時間通過各自的開關(guān)可以控制其暫停和開始;
數(shù)碼管顯示計時時間。
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在遠程云端平臺驗證,遠程云端平臺如下,其他遠程云端平臺可以修改管腳適配:
演示視頻:
設(shè)計文檔:
部分代碼展示:
`timescale?1ns?/?1ps ////////////////////////////////////////////////////////////////////////////////// //?Company:? //?Engineer:? //? //?Create?Date:?2020/01/04?22:08:34 //?Design?Name:? //?Module?Name:?single_timer //?Project?Name:? //?Target?Devices:? //?Tool?Versions:? //?Description:? //? //?Dependencies:? //? //?Revision: //?Revision?0.01?-?File?Created //?Additional?Comments: //? ////////////////////////////////////////////////////////////////////////////////// module?single_timer( input?clk_100HZ, inputrst_n, inputtime_ctrl,//高電平保持,低電平計數(shù) outputreg?[1:0]time_min_ge,//分鐘個位 outputreg?[3:0]time_sec_shi,//秒十位 outputreg?[3:0]time_sec_ge,//秒個位 outputreg?[3:0]time_msec_shi,//毫秒十位 outputreg?[3:0]time_msec_ge//毫秒個位 ????); reg?[1:0]min; reg?[5:0]sec; reg?[6:0]msec; always@(posedge?clk_100HZ?or?negedge?rst_n)begin if(!rst_n)begin min<=0; sec????<=0; msec????<=0; end else?begin if(time_ctrl)begin//高電平保持,低電平計數(shù) min<=min; sec????<=sec????; msec????<=msec????; end else?begin if(msec==99)begin//毫秒 msec<=0; if(sec==59)begin//秒 sec<=0; if(min==1)begin//分鐘 min<=0; end else?begin min<=min+1;//分鐘 end end else?begin sec<=sec+1;//秒 end end else?begin msec<=msec+1;//毫秒 end end end end always@(posedge?clk_100HZ?or?negedge?rst_n)begin if(!rst_n)begin time_min_ge<=0; time_sec_shi<=0; time_sec_ge<=0; time_msec_shi<=0; time_msec_ge<=0; end else?begin time_min_ge<=min;//分鐘個位 time_sec_shi<=sec/10;//秒十位 time_sec_ge<=sec%10;//秒個位 time_msec_shi<=msec/10;//毫秒十位 time_msec_ge<=msec%10;//毫秒個位 end end endmodule
點擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=341
閱讀全文