名称:自动售货机设计Verilog代码Quartus AX301开发板
软件:Quartus
语言:Verilog
代码功能:自动售货机设计
1、商品单价有5元、10元、15、20元
2、可以按键选择商品,选中商品后可以投币
3、支持投币5角和1元,投币结束后按确认键
4、若投币金额足够,则出货并找零,或金额不够,则退还所有钱币,不出货
本代码已在AX301开发板验证,AX301开发板如下,其他开发板可以修改管脚适配:
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,//确认购买,低电平有效 output outgo_done,//出货指示灯 output [7:0] duanxuan,//数码房段选显示 output [5:0]weixuan //数码房位选显示 ); //////////////////////////////////////////////所有按键消抖///////////////////////////////////// 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() );
【来源:www.hdlcode.com】
阅读全文
582