欢迎来到天天文库
浏览记录
ID:9816414
大小:372.50 KB
页数:17页
时间:2018-05-10
《电子课程设计报告--自动售货机》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、电子技术基础课程设计题目名称:自动售货机姓名:学号:组员姓名:班级:指导教师:评语:成绩:教师签名:摘要自动售货机是商业自动化的常用设备,它不受时间、地点的限制,能节省人力、方便交易。1925年美国研制出售香烟的自动售货机,此后又出现了出售邮票、车票的各种现代自动售货机。一般的自动售货机由钱币装置、指示装置、贮藏售货装置等组成。钱币装置是售货机的核心,其主要功能是确认投入钱币的真伪,分选钱币的种类,计算金额。如果投入的金额达到购买物品的数值即发出售货信号,并找出余钱。指示装置用以指示顾客所选商品的品种。贮藏售货装置保存商品,接收出售指示信号,把顾客选择的商品送至付货口。一般售货机的钱币装
2、置由投币口、选别装置、确认钱币真伪的检查装置、计算金额的计算装置和找钱装置组成。而本次课程设计的内容就是在学习相关Verilog代码之后,再结合本学期学习的数字电子技术及其实验的相关知识,通过画出状态图等方式,清楚其逻辑关系和运算过程,编写一个简单的自动售货机程序,实现投入不同的硬币数量和面值,可以得到相应的实际结果,包括出货、找零等功能。并且利用ModelSim软件来实现程序的测试,以及结果的输出和检验。关键字:自动售货机VerilogModelSim软件状态图目录1设计目的12设计题目13设计要求14设计内容24.1有限状态机的描述24.2状态变化图24.3定义时钟信号34.4定义输
3、入和输出端口34.5Verilog代码编写44.5.1主程序:用Verilog语言的case语句44.5.2测试程序64.6有限状态机图85设计内容仿真实验结果95.1运行过程95.2波形分析106参考文献12电子课程设计总结与体会131设计目的(1)掌握有限状态机的概念和描述方法;(2)掌握时序电路系统的设计方法;(3)学些和掌握Verilog描述数字系统的方法;(4)学习和掌握ModelSim等软件的使用方法;(5)学习和了解IC设计的基本流程。2设计题目(1)可投5角和一元两种硬币;(2)饮料单价为2.5元;(3)系统能够根据用户输入的硬币,判断钱币是否足够,当所投硬币达到或者超过
4、购买者所选面值时,则根据顾客的要求自动售货,并找回剩余的硬币,然后回到初始状态,当所投硬币面值不够时,则给出提示,并通过一个复位键退回所投硬币。然后回到初始状态。3设计要求(1)描述有限状态机;(2)定义输入和输出端口;(定义各种输出状态,显示操作结果)(3)定义时钟;(4)Verilog代码编写;(5)ModelSim综合电路,输出电路的网表;(6)编写测试向量,绘制测试波形;144设计内容4.1有限状态机的描述有限状态机(finite-statemachine,FSM)是表示有限个状态以及在这些状态之间的转移和动作等行为的数学模型。在数字电路系统中,有限状态机是一种十分重要的时序逻辑
5、电路模块。它对数字系统的设计具有十分重要的作用。有限状态机是指输出取决于过去输入部分和当前输入部分的时序逻辑电路。一般来说,除了输入部分和输出部分外,有限状态机还含有一组具有“记忆”功能的寄存器,这些寄存器的功能是记忆有限状态机的内部状态,它们常被称为状态寄存器。在有限状态机中,状态寄存器的的下一个状态不仅与输入信号有关,而且还与该寄存器的当前状态有关,因此有限状态机又可以认为是组合逻辑和寄存器逻辑的一种组合。其中,寄存器逻辑的功能是存储有限状态机的内部状态;而组合逻辑又可以分为次态逻辑和输出逻辑两部分,次态逻辑的功能是确定有限状态机的下一个状态,输出逻辑的功能是确定有限状态机的输出。4
6、.2状态变化图线段表示money_in=2'b01表示每次投币5角(S1—S2,S2—S3,S3—S4,S4—S5)线段表示money_in=2'b10表示每次投币1元(S1—S3,S2—S4,S3—S5,S4—S6)线段表示退币,回到初始S0状态14上图中有七种状态,分别为:S0:初始状态S1:投币0.5元S2:共投币1元S3:共投币1.5元S4:共投币2元S5:共投币2.5元S6:共投币0.5元4.3定义时钟信号时钟信号为周期为20ns,占空比为50%的矩形波信号。4.4定义输入和输出端口状态输入转移输出S0half_yuanS1S0one_yuanS2S1half_yuanS2S1
7、one_yuanS3S1checkS0money_outS2half_yuanS3S2one_yuanS4S2checkS0money_outS3half_yuanS4S3one_yuanS5drink_outS3checkS0money_outS4half_yuanS5drink_outS4one_yuanS6money_outdrink_outS4checkS0money_outS5S0S6S0144.5Verilog代码编写4
此文档下载收益归作者所有