VIVADO自动售票机售货机verilog代码ego1开发板验证

这篇具有很好参考价值的文章主要介绍了VIVADO自动售票机售货机verilog代码ego1开发板验证。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

名称:VIVADO自动售票机售货机verilog代码ego1开发板验证

软件:VIVADO

语言:Verilog

代码功能:

自动售票机 

1、自动售票机只出售1角、2角、5角和1元4种车票

2、只接收1角、5角和1元硬币,每次只能出售1张车 

3、自动售票机具有累加销售额的功能

实验要求 

出售车票用SW0~3分别表示1角、2角、5角、1元4种 ;

投入硬币用S1、S2、S3分别表示1角5角和1元

投币后用开关SW7确认;若投入钱数不够,将硬币退出并报警,D9~D16闪烁,报警3秒

若投币足够,送出车票,用4个不同LED辅出D1、D2、D3、D4显示,若有余额自动找零

所有币额用两位BCD码显

按键和拔码开关需要做消抖处理。

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

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

本代码已在ego1开发板验证,开发板如下,其他开发板可以修改管脚适配:

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

代码下载:VIVADO自动售票机售货机verilog代码ego1开发板验证名称:VIVADO自动售票机售货机verilog代码ego1开发板验证 (代码在文末下载)软件:VIVADO语言:Verilog代码功能:自动售票机 1、自动售票机只出售1角、2角、5角和1元4种车票2、只接收1角、5角和1元硬币,每次只能出售1张车 3、自动售票机具有累加销售额的功能实验要求 出售车票用SW0~3分别表示1角、2角、5角、1元4种 ;投入硬币用S1、S2、S3分别表示1角5角和1http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=304

设计文档:

1. 工程文件

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

2. 程序文件

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

3. 程序编译

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

4. RTL图

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

5. 管脚分配

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

6. Testbench

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

7. 仿真图

整体仿真图

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

按键消抖模块仿真

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

售票机控制模块仿真

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

数码管显示模块仿真

VIVADO自动售票机售货机verilog代码ego1开发板验证,fpga开发,ego1,vivado,自动售票机,verilog

部分代码展示:文章来源地址https://www.toymoban.com/news/detail-753490.html

//售货状态控制模块
module state_control(
input clk_in,
input rst,//高电平有效
//按键 高电平有效
input Selection_goods_01,//选商品1,商品分为0.1,0.2,0.5,1.0元
input Selection_goods_02,//选商品2,商品分为0.1,0.2,0.5,1.0元
input Selection_goods_05,//选商品5,商品分为0.1,0.2,0.5,1.0元
input Selection_goods_10,//选商品10,商品分为0.1,0.2,0.5,1.0元
input throw_into_10_down_out,//1.0元
input throw_into_05_down_out,//0.5元
input throw_into_01_down_out,//0.1元
input confirm_button_out,//确认
output [7:0] LED,//闪烁报警(D9~16)
output reg outgo_done_01,//出货指示灯1
output reg outgo_done_02,//出货指示灯2
output reg outgo_done_05,//出货指示灯5
output reg outgo_done_10,//出货指示灯10
output [7:0] total_accumulated_money,//累计卖货额
output [7:0] total_throw_inmoney_out,//投入总钱币
output [7:0] total_need_money_out,//选中商品价钱
output [7:0] total_refund_money_out//找零金额
);
parameter state_0=4'd0;//选择商品
parameter state_1=4'd1;//投钱
parameter state_2=4'd2;//确认购买
parameter state_3=4'd3;//投入不足
parameter state_4=4'd4;//等待时间3秒
parameter state_5=4'd9;//结束
reg [3:0] state=4'd0;
reg [7:0] total_throw_inmoney=8'd0;//投入总钱币
reg [7:0] total_need_money=8'd0;//选中商品价钱
reg [7:0] total_refund_money=8'd0;//找零金额
reg [7:0] accumulated_money=8'd0;//累计卖货额
assign total_throw_inmoney_out=total_throw_inmoney;
assign total_need_money_out=total_need_money;
assign total_refund_money_out=total_refund_money;
assign total_accumulated_money=accumulated_money;
///控制模块:状态机,实现各个状态的转换//
reg wait_second_time=1'd0;
always@(posedge clk_in or posedge rst)
if(rst)
state<=state_0;
else
case(state)
state_0://选择商品
begin
if(confirm_button_out==1)
begin
state<=state_1;
end 
else begin 
state<=state_0;
end
end
state_1://投钱
begin
if(confirm_button_out==1)//按确认键
state<=state_2;//找零
else
state<=state_1;//继续投钱
end
state_2://确认购买
begin
if(total_throw_inmoney<total_need_money)//投入不足
state<=state_3;//蜂鸣器提示3秒
else 
begin    //如果投入大于等于所需钱数
state <=state_4;
end
end
state_3://投入不足,蜂鸣器提示
if(wait_second_time==1'd1)
begin
state<=state_0;//回到初始状态
end
else begin
state<=state_3;
end
state_4://等待时间3秒
if(wait_second_time==1'd1)  //保持3s进入下一个状态
state<=state_5;
else
state<=state_4;
state_5://结束
state<=state_0;
default:state<=state_0;
endcase

到了这里,关于VIVADO自动售票机售货机verilog代码ego1开发板验证的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【FPGA入门八】自动售货机

    功能完整描述: KEY4:开关机按键,复位时,默认是关机状态,数码管和LED灯均不亮,同时蜂鸣器响,其余按键按下无效。 KEY3:在开机状态时,投币1元 KEY2:在开机状态时,投币为0.5元 KEY1:当投币但少于货物的价格时,取消订单,数码管显示为0.0,同时LED灯实现跑马灯2s然

    2024年02月08日
    浏览(27)
  • 如何用Java设计自动售货机?

    如何用Java设计自动售货机?是大多在高级Java开发人员面试中经常被问到的好问题之一。在典型的编码面试中,你会得到一个问题描述来开发一个售货机,在有限的时间内,通常2到3小时内,你需要在Java中编写设计文档、工作代码和单元测试。这种Java面试的一个关键优势是可以一次

    2024年02月05日
    浏览(85)
  • FPGA实现简易的自动售货机模型

    环境: 1、Quartus18.1 2、vscode 3、板子型号:EP4CE6F17C8N 要求: 自动售货机功能: 1.两个按键用于投币,1个1元,1个5角 2.一个按键用于商品选择,农夫山泉2块,干脆面1块5 3.找零 设计: 我们选择使用四个按键,分别用于投币一元、五角、商品选择、结算四个功能。用六位数码管

    2024年02月09日
    浏览(27)
  • 自动售货机销售数据分析与应用

    本书不仅适用于零基础的读者自学,还适用于教师教学,为了帮助读者更加高效地掌握本书的内容,本书提供了以下10项附加价值: (1)建模平台:提供一站式大数据挖掘建模平台,免配置,包含大量案例工程,边练边学,告别纸上谈兵 (2)视频讲解:提供不少于600分钟

    2024年02月08日
    浏览(31)
  • Verilog设计实例(一):自动售货机设计实例

    本系列为FPGA设计实例,基于Verilog HDL,题目一般是我在网上看到的一些FPGA相关的实验题目,基本会是一个实际场景的系统实现,而不是简单单元的设计,这是为了能更全面的练习,这些实例一般是可以基于FPGA进行实现的,因为正好手里有一块zynq板子,所以想把这个东西用起

    2024年02月05日
    浏览(25)
  • 【FPGA】基于状态机实现自动售货机模拟

    此自动售货机模拟基于EP4CE6F17C8开发板实现,用按键,led灯,数码管表示各个输入输出 功能: 此自动售货机可以选择A(三元)与B(五元)商品且选择商品数量,一次可以投1块与5块钱。当投币数量满足商品价格时则能出货,且退款额外支付,在任意阶段皆可以取消支付并退

    2024年02月16日
    浏览(31)
  • 基于单片机的自动售货机系统设计

    欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 技术交流认准下方 CSDN 官方提供的联系方式   本文设计基于单片机的自动售货机系统,分为硬件电路设计与软件设计。硬件电路设计,本系统由ST(意法半导体)公司设计和生产的STM32F103C8T6单片

    2024年02月03日
    浏览(32)
  • 【Python】python自动售货机销售数据分析

    👉博__主👈:米码收割机 👉技__能👈:C++/Python语言 👉公众号👈:测试开发自动化【获取源码+商业合作】 👉荣__誉👈:阿里云博客专家博主、51CTO技术博主 👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。 近年来,随着我国经济技术的不断提升,

    2024年02月06日
    浏览(29)
  • 自动售货机控制系统的FPGA设计与实现

            采用VHDL语言设计一个自动售货机控制系统,要求能在MaxPlus Ⅱ软件平台进行仿真模拟,技术指标如下: 1)有2元、3元、8元商品;有1元、5元、10元钱币; 2)当投入的总币值大于顾客购买的商品单价时,机器提供商品并将余币退出,回到初始状态;若投入的总币值小

    2024年02月06日
    浏览(33)
  • stm32毕设 自动售货机设计与实现(源码+硬件+论文)

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月08日
    浏览(30)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包