名稱:自動(dòng)售貨機(jī)設(shè)計(jì)Verilog代碼Quartus? AX301開(kāi)發(fā)板
軟件:Quartus
語(yǔ)言:Verilog
代碼功能:
自動(dòng)售貨機(jī)設(shè)計(jì):
1、商品單價(jià)有5元、10元、15、20元。
2、可以按鍵選擇商品,選中商品后可以投幣。
3、支持投幣5角和1元,投幣結(jié)束后按確認(rèn)鍵。
4、若投幣金額足夠,則出貨并找零,或金額不夠,則退還所有錢幣,不出貨。
FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com
本代碼已在AX301開(kāi)發(fā)板驗(yàn)證,AX301開(kāi)發(fā)板如下,其他開(kāi)發(fā)板可以修改管腳適配:
演示視頻:
設(shè)計(jì)文檔:
Testbench
整體仿真圖
消抖仿真圖
顯示模塊仿真圖
控制模塊仿真圖
部分代碼展示:
//Vending_machine module?auto_sell( input?clk_50M,//50M //按鍵?低電平有效 input?Selection_of_05,//選商品 //按鍵?低電平有效 input?throw_into_10_down,//投1元 input?throw_into_05_down,//投0.5元 //按鍵?低電平有效 input?confirm_button,//確認(rèn)購(gòu)買,低電平有效 output??outgo_done,//出貨指示燈 output??[7:0]?duanxuan,//數(shù)碼房段選顯示 output??[5:0]weixuan?//數(shù)碼房位選顯示 ); //////////////////////////////////////////////所有按鍵消抖///////////////////////////////////// wire?Selection_of_05_out; wire?throw_into_10_down_out; wire?throw_into_05_down_out; wire?confirm_button_out; ax_debounce??select_05? ( ????.??clk(clk_50M),? ????.??rst(1'b0),? ????.??button_in(Selection_of_05), ????.??button_posedge(), ????.??button_negedge(Selection_of_05_out), ????.??button_out() );
閱讀全文