標(biāo)題: FPGA數(shù)字搶答器的設(shè)計(jì) Verilog程序 [打印本頁(yè)]
作者: Sea海 時(shí)間: 2020-7-2 19:01
標(biāo)題: FPGA數(shù)字搶答器的設(shè)計(jì) Verilog程序
數(shù)字搶答器的設(shè)計(jì)
(1)具有4個(gè)搶答按鍵;
(2)10秒內(nèi)有效搶答,并倒計(jì)時(shí)顯示,若10秒內(nèi)無(wú)人搶答,進(jìn)行聲光報(bào)警。
(3)在有效時(shí)間內(nèi),將第一個(gè)按下按鍵的組員的編號(hào)進(jìn)行鎖存、并顯示其編號(hào),其他的組員再按無(wú)效。
(4)具有主持人復(fù)位按鍵,當(dāng)復(fù)位鍵后,才可搶答并啟動(dòng)倒計(jì)時(shí)。
1.jpg (2.64 MB, 下載次數(shù): 91)
下載附件
部分測(cè)試1
2020-7-2 19:00 上傳
3.jpg (2.82 MB, 下載次數(shù): 68)
下載附件
部分測(cè)試2
2020-7-2 19:00 上傳
部分代碼(Verilog):(已實(shí)現(xiàn)上述功能,且測(cè)試無(wú)誤)
module digital_answer(a,b,c,d,reset,clk,beep,led,seg,deg);
/********** **********
**a,b,c,d是四個(gè)搶答按鍵。(低電平搶答有效)
**reset是主持人復(fù)位鍵(也是開(kāi)始)
**beep是聲音報(bào)警
**led是光報(bào)警
**Nixie_tube[0]Nixie_tube[1]是數(shù)碼管倒計(jì)時(shí)顯示Nixie_tube[2]顯示空白
**Nixie_tube[3]是搶答者編號(hào)顯示數(shù)碼管
**clk是時(shí)鐘
**seg數(shù)碼管段選
**deg數(shù)碼管位選
**clk選擇48M(clock1)
********** ***********/
input a,b,c,d,reset,clk;
output beep;
output [3:0] led;
output [7:0] seg;
output [7:0] deg;
reg beep;
reg [3:0] led;
reg [3:0] Nixie_tube;
reg [7:0] seg;
reg [7:0] deg;
reg [3:0] data; //顯示選手編號(hào)a,b,c,d
reg input_flag,count_flag;
reg [14:0] count1; //2400分頻(產(chǎn)生1khz),作用與數(shù)碼管動(dòng)態(tài)顯示
reg [8:0] count2; //500分頻(每0.5s翻轉(zhuǎn)一次產(chǎn)生1hz信號(hào)計(jì)數(shù))
reg div_1khz,div_1hz;
reg [3:0] count_one,count_ten;
reg [3:0] led_n;
reg [2:0] cnt;
//reg [3:0] dat;
/****1Khz信號(hào)產(chǎn)生****/
always @(posedge clk)
begin
if(count1=='d24000)
begin div_1khz<=~div_1khz;count1<=0;end
else
begin count1<=count1+1'b1;end
end
/****1hz信號(hào)產(chǎn)生****/
always @(posedge div_1khz)
begin
if(count2=='d500)
begin div_1hz<=~div_1hz;count2<=0;end
else
begin count2<=count2+1'b1;end
end
全部代碼51hei下載地址:
digital_answer.zip
(1.42 KB, 下載次數(shù): 65)
2020-7-2 18:58 上傳
點(diǎn)擊文件名下載附件
上述代碼的后續(xù)
下載積分: 黑幣 -5
歡迎光臨 (http://www.torrancerestoration.com/bbs/) |
Powered by Discuz! X3.1 |