名稱:4人競(jìng)賽數(shù)字搶答器vivado軟件verilog代碼ego1開發(fā)板(代碼在文末下載)
軟件:VIVADO
語(yǔ)言:Verilog
代碼功能:
數(shù)字搶答器的設(shè)計(jì)任務(wù)說(shuō)明:
設(shè)計(jì)一個(gè)可供4人競(jìng)賽的數(shù)字搶答器。
(1)具有定時(shí)搶答功能,且一次搶答的時(shí)間由主持人設(shè)定,本搶答器的時(shí)間 設(shè)定為60秒以內(nèi),當(dāng)主持人啟動(dòng)“開始”開關(guān)后,定時(shí)器開始計(jì)時(shí)。
(2)設(shè)定的搶答時(shí)間內(nèi),選手可以搶答,搶答成功定時(shí)器停止工作,顯示器上顯示選手的號(hào)碼和搶答時(shí)間。并保持到主持人按復(fù)位鍵
(3)搶答器開始時(shí)數(shù)碼管顯示序號(hào)0,選手搶答實(shí)行優(yōu)先鎖存,優(yōu)先搶答選手 的編號(hào)一直保持到主持人將系統(tǒng)清除為止。搶答后顯示優(yōu)先搶答者序號(hào),并且不出現(xiàn)其他搶答者的序號(hào)。
(4)當(dāng)設(shè)定的時(shí)間到,而無(wú)人搶答時(shí),本次搶答無(wú)效,發(fā)出報(bào)警指示(可以 用LED燈亮表示),并禁止搶答,定時(shí)器上顯示00。主持人按動(dòng)復(fù)位按 鈕后,搶答可以重新開始。
注:附加功能根據(jù)本人能力自行添加(如:自動(dòng)積分、減分等等)
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在ego1開發(fā)板驗(yàn)證,開發(fā)板如下,其他開發(fā)板可以修改管腳適配:
演示視頻:
設(shè)計(jì)文檔:
1. 工程文件
2. 程序文件
3. 程序編譯
4. RTL圖
5. 管腳分配
6. Testbench
7. 仿真圖
整體仿真圖
分頻模塊
搶答器控制模塊
數(shù)碼管顯示模塊
部分代碼展示:
//4人搶答器 module?responder_top ( input?clk,//100Mhz input?reset,//復(fù)位 input?key_main_in,//主持人主控S0 input?key_1_in,//搶答按鍵輸入1 input?key_2_in,//搶答按鍵輸入2 input?key_3_in,//搶答按鍵輸入3 input?key_4_in,//搶答按鍵輸入4 output?beep,//報(bào)警輸出(LED) output??[3:0]?weixuan,//位選 output??[7:0]?duanxian//段選 ); wire?[2:0]?cur_state;//當(dāng)前狀態(tài) wire?[7:0]?time_down;//倒計(jì)時(shí)10_0 wire?[3:0]?responder_num;//搶答指示1~6 wire?clk_1Hz;//1Hz //搶答器控制模塊 responder_ctrl?i_responder_ctrl ( .?clk(clk),//50Mhz .?reset(reset),//高電平有效 .?clk_1Hz(clk_1Hz),//1Hz時(shí)鐘 .?key_main_in(key_main_in),//主持人主控 .?key_1_pos(key_1_in),//搶答按鍵輸入1 .?key_2_pos(key_2_in),//搶答按鍵輸入2 .?key_3_pos(key_3_in),//搶答按鍵輸入3 .?key_4_pos(key_4_in),//搶答按鍵輸入4 .?beep(beep),//蜂鳴器輸出 .?time_down(time_down),//倒計(jì)時(shí) .?cur_state(cur_state), .?responder_num(responder_num)//搶答指示1~6 ); //分頻模塊 div_1Hz?i_div_1Hz ( .?clk(clk),//50M .?reset(key_main_in),//復(fù)位 .?clk_1Hz(clk_1Hz)//1Hz時(shí)鐘 ); //數(shù)碼管顯示模塊 display?i_display ( .?clk(clk), .?time_down(time_down),//倒計(jì)時(shí)10_0 .?responder_num(responder_num),//搶答指示1~6 .?weixuan(weixuan),//位選,高電平亮 .?duanxian(duanxian)//段選,高電平亮 ); endmodule
點(diǎn)擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=314