自动售货机设计Verilog代码VIVADO仿真

名称:自动售货机设计Verilog代码VIVADO仿真

软件:VIVADO

语言:Verilog

代码功能:

自动售货机

一共有2元、3元、4元、6元4种商品,可以投币1元和5元。支持找零和取消购买若投币金额大于价格则找零,若投币不足或且10s内没有投币则自动取消。


FPGA代码Verilog/VHDL代码资源下载:www.hdlcode.com


演示视频:

设计文档:

售货机设计文档.doc

1. 工程文件

2. 程序文件

3. 程序编译

4. RTL图

5. Testbench

6. 仿真图

一共有2元、3元、4元、6元4种商品,可以投币1元和5元。支持找零和取消购买若投币金额大于价格则找零,若投币不足或且10s内没有投币则自动取消。

仿真图

按键检测模块

状态控制模块

数码管显示模块


部分代码展示:

module auto_sell(
input clk_in,//100M
input reset_n,//复位
input coin_1_key,//投币1元
input coin_5_key,//投币5元
input price_2_key,//2元商品
input price_3_key,//3元商品
input price_4_key,//4元商品
input price_6_key,//6元商品
input confirm_key,//确认
output succeed_ledn,//购买成功指示灯
output coin_return_ledn,//退币指示灯
output [3:0] DLA,//数码管位选
output [7:0] HEX//数码管段选
);
wire [3:0] input_money_BCD;//投币金额
wire [3:0] need_money_BCD;//价钱
wire [3:0] change_money_BCD;//找钱
wire [3:0] left_money_BCD;//还差金额
wire coin_1_p;//投币1元
wire coin_5_p;//投币5元
wire price_2_p;//2元商品
wire price_3_p;//3元商品
wire price_4_p;//4元商品
wire price_6_p;//6元商品
wire confirm_p;//确认 
//按键消抖模块
key_jitter i0_key_jitter(
. clkin(clk_in),     
. key_in(coin_1_key),//输入
. key_negedge(coin_1_p)//消抖后按键下降沿
);
//按键消抖模块
key_jitter i1_key_jitter(
. clkin(clk_in),     
. key_in(coin_5_key),//输入
. key_negedge(coin_5_p)//消抖后按键下降沿
);
//按键消抖模块
key_jitter i2_key_jitter(
. clkin(clk_in),     
. key_in(price_2_key),//输入
. key_negedge(price_2_p)//消抖后按键下降沿
);
//按键消抖模块
key_jitter i3_key_jitter(
. clkin(clk_in),     
. key_in(price_3_key),//输入
. key_negedge(price_3_p)//消抖后按键下降沿
);

代码文件(付费下载):



1、代码文件需要付费后才可见。
2、支付问题请联系微信公众号客服。
3、优质Verilog/VHDL代码资源,所见即所得。
Verilog/VHDL资源下载 » 自动售货机设计Verilog代码VIVADO仿真

发表评论

模板文件不存在: ./template/plugins/comment/pc/index.htm

注册为本站会员,充值100得150,详情咨询客服

目前为止共有 *** 位优秀的会员加入! 立刻加入会员