• 方案介紹
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

Quartus自動(dòng)售貨機(jī)Verilog代碼

加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

2-23122610552Q41.doc

共1個(gè)文件

名稱:Quartus自動(dòng)售貨機(jī)Verilog代碼

軟件:Quartus

語言:Verilog

代碼功能:自動(dòng)售貨機(jī),三種幣值、兩種商品,注意定義和設(shè)計(jì)的合理性。

FPGA代碼Verilog/VHDL代碼資源下載:www.hdlcode.com

演示視頻:

設(shè)計(jì)文檔:

1. 工程文件

2. 程序文件

3. 程序編譯

4. Testbench

5. 仿真圖

整體仿真圖

按鍵上升沿檢測仿真

狀態(tài)機(jī)控制模塊

下圖為,選擇1.5元商品,依次付款0.5+0.5+1.0=2.0元,然后1.5元商品的出貨指示燈亮。并找零0.5元。

下圖為,選擇2.0元商品,依次付款0.5+1.0=1.5元,(金額不足)然后按下退幣鍵,退幣1.5元。

顯示模塊

部分代碼展示:

module?auto_sell(
input?clk_in,//時(shí)鐘
input?reset_n,//復(fù)位
input?coin_10_key,//投幣1.0元
input?coin_50_key,//投幣5.0元
input?coin_05_key,//投幣0.5元
input?price_20_key,//2.0元商品
input?price_15_key,//1.5元商品
input?confirm_key,//確認(rèn)
input?return_key,//退幣
output?succeed_ledn_15,//1.5元商品購買成功指示燈
output?succeed_ledn_20,//2.0元商品購買成功指示燈
output?[3:0]?DLA,//數(shù)碼管位選,低電平選擇
output?[7:0]?HEX//數(shù)碼管段選,低亮
);
wire?[7:0]?input_money_BCD;//投幣金額
wire?[7:0]?change_money_BCD;//找錢
wire?coin_10_p;//投幣1.0元
wire?coin_50_p;//投幣5.0元
wire?coin_05_p;//投幣0.5元
//按鍵上升沿檢測模塊
key_jitter?i0_key_jitter(
.?clkin(clk_in),?????
.?key_in(coin_10_key),//輸入
.?key_posedge(coin_10_p)//按鍵上升沿檢測
);
//按鍵上升沿檢測模塊
key_jitter?i1_key_jitter(
.?clkin(clk_in),?????
.?key_in(coin_50_key),//輸入
.?key_posedge(coin_50_p)//按鍵上升沿檢測
);
//按鍵上升沿檢測模塊
key_jitter?i2_key_jitter(
.?clkin(clk_in),?????
.?key_in(coin_05_key),//輸入
.?key_posedge(coin_05_p)//按鍵上升沿檢測
);
//狀態(tài)控制模塊
state_ctrl?i_state_ctrl(
.?clk_in(clk_in),//時(shí)鐘100Hz
.?reset_n(reset_n),//系統(tǒng)復(fù)位
.?coin_10_p(coin_10_p),//投幣1.0元
.?coin_50_p(coin_50_p),//投幣5.0元
.?coin_05_p(coin_05_p),//投幣0.5元
.?price_20_p(price_20_key),//2.0元商品
.?price_15_p(price_15_key),//1.5元商品
.?return_p(return_key),//退幣鍵
.?confirm_p(confirm_key),//確認(rèn)
.?succeed_ledn_15(succeed_ledn_15),//1.5元商品購買成功指示燈
.?succeed_ledn_20(succeed_ledn_20),//2.0元商品購買成功指示燈
.?input_money_BCD(input_money_BCD),//投幣金額
.?change_money_BCD(change_money_BCD)//找錢
);
//數(shù)碼管顯示模塊
display_num?i_display_num(
.?clk_in(clk_in),//100Hz
.?input_money_BCD(input_money_BCD),//投幣金額
.?change_money_BCD(change_money_BCD),//找錢
.?DLA(DLA),//數(shù)碼管位選,低電平選擇
.?HEX(HEX)//數(shù)碼管段選,低亮
);
endmodule

點(diǎn)擊鏈接獲取代碼文件:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=417

  • 2-23122610552Q41.doc
    下載

相關(guān)推薦