名稱:數(shù)字密碼啟動(dòng)器設(shè)計(jì)Verilog代碼VIVADO PYNQ開發(fā)板
軟件:VIVADO
語言:Verilog
代碼功能:
數(shù)字密碼啟動(dòng)器
數(shù)字密碼啟動(dòng)器具體設(shè)計(jì)要求:
1、數(shù)子密碼啟動(dòng)器采用4個(gè)十進(jìn)制數(shù),輸入密碼時(shí)通過數(shù)碼管顯示當(dāng)前輸入的數(shù)字。
2、當(dāng)4位密碼輸入正確后(初始密碼為可自定義4位十進(jìn)制數(shù),報(bào)告中請(qǐng)寫明),系統(tǒng)可以正確啟動(dòng)裝置;當(dāng)密碼輸入錯(cuò)誤(多一位、少一位或錯(cuò)誤)時(shí),系統(tǒng)給岀警報(bào)。
3、系統(tǒng)復(fù)位后處于等待狀態(tài),按下 Ready鍵后,準(zhǔn)備就緒,可以輸入密碼。
4、密碼輸入正確后,可以啟動(dòng)。
5、密碼輸入錯(cuò)誤時(shí),系統(tǒng)給岀警報(bào),紅燈閃爍,蜂鳴器響,此時(shí) Ready和 Wait t無效,必須由安保人員重新設(shè)置到等待狀態(tài)。
6、啟動(dòng)事件發(fā)生后,系統(tǒng)應(yīng)重新回到等待狀態(tài)。
7、十個(gè)數(shù)字鍵作為密碼輸入。
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在PYNQ開發(fā)板驗(yàn)證,PYNQ開發(fā)板如下,其他開發(fā)板可以修改管腳適配:
演示視頻:
設(shè)計(jì)文檔:
1、工程文件
2、程序文件
3、程序編譯
4、RTL圖
5、管腳分配
部分代碼展示:
//數(shù)字密碼啟動(dòng)器具體設(shè)計(jì)要求: //1、 數(shù)子密碼啟動(dòng)器采用 4 個(gè)十進(jìn)制數(shù),輸入密碼時(shí)通過數(shù)碼管顯示當(dāng)前輸入的數(shù)字 //2、 當(dāng) 4 位密碼輸入正確后(初始密碼為可自定義 4 位十進(jìn)制數(shù),報(bào)告中請(qǐng)寫明),系統(tǒng)可 //以正確啟動(dòng)啟動(dòng)裝置;當(dāng)密碼輸入錯(cuò)誤(多一位、少一位或錯(cuò)誤)時(shí),系統(tǒng)給出警報(bào) //3、 系統(tǒng)復(fù)位后處于等待狀態(tài),按下 Ready 鍵后,準(zhǔn)備就緒,可以輸入密碼。 //4、 密碼輸入正確后,可以啟動(dòng) //5、 密碼輸入錯(cuò)誤時(shí),系統(tǒng)給出警報(bào),紅燈閃爍,蜂鳴器響,此時(shí) Ready 和 Wait_t 無效,必 //須由安保人員重新設(shè)置到等待狀態(tài) //6、 啟動(dòng)事件發(fā)生后,系統(tǒng)應(yīng)重新回到等待狀態(tài) //7、 十個(gè)數(shù)字鍵作為密碼輸入 module bomb_control( input Clk,//標(biāo)準(zhǔn)時(shí)鐘信號(hào) 500Hz input Rst,//核心板撥碼SW0,復(fù)位后出于等待狀態(tài),低有效 input Wait_t,//核心板撥碼SW1,進(jìn)入密碼輸入狀態(tài)時(shí),在密碼輸入完畢確認(rèn)前,可通過 Wait_t 回到等待狀態(tài),密碼確認(rèn)后,該按鍵無效 input Sure,//撥碼擴(kuò)展板撥碼SW6。密碼輸入完畢,確認(rèn) input Setup,//按鍵btn0,錯(cuò)誤重建信號(hào),密碼輸入錯(cuò)誤時(shí),系統(tǒng)給出警報(bào),紅燈閃爍,蜂鳴器響,此時(shí) Ready 和 Wait_t 無效,必須由安保人員重新設(shè)置到等待狀態(tài) input Ready,//按鍵btn1,就緒后可輸入密碼 input Fire,//按鍵btn2,且僅當(dāng)密碼輸入正確時(shí)有效,其余情況按下該按鍵進(jìn)入警報(bào) input Confirem,//btn3,確認(rèn)按鍵,輸入4位撥碼對(duì)應(yīng)的值 input [3:0] key_value,//密碼輸入按鍵 //input A0,//密碼輸入按鍵 //input A1,//密碼輸入按鍵 //input A2,//密碼輸入按鍵 //input A3,//密碼輸入按鍵 //input A4,//密碼輸入按鍵 //input A5,//密碼輸入按鍵 //input A6,//密碼輸入按鍵 //input A7,//密碼輸入按鍵 //input A8,//密碼輸入按鍵 //input A9,//密碼輸入按鍵 output [3:0] state, output LT,//led0,密碼輸入正確,綠燈亮,高有效 output BT,//led1,啟動(dòng)成功,黃燈亮,高有效 output RT,//led2,密碼輸入錯(cuò)誤,紅燈以 1hz 頻率閃爍 output LB,//led3,密碼錯(cuò)誤,蜂鳴器響 output [15:0] M_disp//當(dāng)前輸入數(shù)字 ); parameter mima=16'h5643;//定義初始密碼為5643 //定義4個(gè)寄存器儲(chǔ)存輸入密碼 reg [15:0] number_mima=16'd0;