自动售货机设计Verilog代码Quartus仿真 |
您所在的位置:网站首页 › 刮刮乐自动售货机价格 › 自动售货机设计Verilog代码Quartus仿真 |
名称:自动售货机设计Verilog代码Quartus仿真(文末获取) 软件:Quartus 语言:Verilog 代码功能: 2.设计内容及基本要求 设计一个小商品自动售货机,要求如下 (1)基本功能 ①售货机只售出价值为5角、1元、1.5元和2元的小商品。购买者每次通过开关选择一种小商品进行购买 ②用开关分别模拟5角、1元硬币和5元纸币投入(一次只能投入一个硬币或张纸币)。当所投面值达到或超出购买者所选面值,并确认购买时,购买成功:小商品对应的灯亮表示售出。投入确认和购买确认可用按钮 ③当所投币值不足面值时,可通过一个复位按钮退回所投币值,回到初始状 ④若退回或找零时,用几组灯分别表示找零数量:一组灯表示找回的5元纸币的数量,一组灯表示找回的1元的数量,一组表示找回的角的数量 ⑤售出货物或退回后,都回到初始状态。 1. 工程文件 2. 程序运行 3. 管脚约束 4. 程序仿真 部分代码展示: module auto_sell( input clk,//50M input reset_n,//复位 //开关 input select_5,//选中5角商品 input select_10,//选中1元商品 input select_15,//选中1.5元商品 input select_20,//选中2元商品 input money_5,//投入5角 input money_10,//投入1元 input money_15,//投入1.5元 input money_50,//投入5元 //按键 input confirm_purchase,//确认购买 input refund_money,//退钱 //LED output reg purchase_5,//购买成功指示灯 output reg purchase_10,//购买成功指示灯 output reg purchase_15,//购买成功指示灯 output reg purchase_20,//购买成功指示灯 output [2:0]give_change_5,//找零5角 output [2:0]give_change_10,//找零1元 output [2:0]give_change_15,//找零1.5元 output [2:0]give_change_20//找零2元 ); parameter s_idle=4'd0; parameter s_select=4'd1; parameter s_incoin=4'd2; parameter s_refund=4'd3; parameter s_wait5s=4'd4;//找零时间5秒 parameter s_refund_20=4'd5; parameter s_refund_15=4'd6; parameter s_refund_10=4'd7; parameter s_refund_5=4'd8; parameter s_end=4'd9; reg [3:0] state=4'd0; reg [7:0] input_money=8'd0;//投入总钱币 reg [7:0] select_need_money=8'd0;//选中商品价钱 reg [7:0] refund_money_out=8'd0;//找零金额 //选中商品价钱 always@(posedge clk) if(reset_n==0 || state==s_end) select_need_money |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |