重庆大学电气自动售货机总结分析报告.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
电子技术基础 课 程 设 计 题目名称: 自动售货机 姓 名: 学 号: 组员姓名: 班 级: 指导教师: 吕宗伟 目录 摘要 3 一、设计题目 4 二、设计要求 4 三、设计目的 4 四、设计方案 4 4.1 有限状态机描述 4 4.1.1变量定义 4 4.1.2 列写状态表 5 4.1.3 状态图 6 4.2 售货机代码及测试向量代码 6 4.2.1 自动售货机代码 6 4.2.2 自动售货机测试向量代码 8 4.3 仿真分析 10 4.3.1 波形图 10 4.3.2 状态图 12 从图中可以看出,它与预期的状态图一致,符合设计预期,完成了设计任务。 12 4.3.3 Dataflow图 13 五、实验总结 14 参考资料 15 摘要 现代的自动售货机的内部控制系统采用VHDL描述语言,用有限状态机进行系统状态描述,通电复位后系统自动初始化,根据外界输入的信号转换不同的状态(如投币状态、销售状态、找零状态)。 Verilog HDL是目前应用最为广泛的硬件描述语言.Verilog HDL可以用来进行各种层次的逻辑设计,也可以进行数字系统的逻辑综合,仿真验证和时序分析等。自动售货机由钱币装置、指示装置、贮藏售货装置等组成。系统能够根据用户输入的硬币,判断钱币是否足够,当所投硬币达到或者超过购买者所选面值时,则根据顾客的要求自动售货,并找回剩余的硬币,然后回到初始状态,当所投硬币面值不够时,则给出提示,并通过一个复位键退回所投硬币。然后回到初始状态。,即 关键词 自动售货机、硬件描述语言Verilog、Modelsim软件 一、题目 饮料单价为2.5元; 系统能够根据用户输入的硬币,判断钱币是否足够,当所投硬币达到或者超过购买者所选面值时,则根据顾客的要求自动售货,并找回剩余的硬币,然后回到初始状态,当所投硬币面值不够时,则给出提示,并通过一个复位键退回所投硬币。然后回到初始状态。、设计要求 定义输入和输出端口;(定义各种输出状态,显示操作结果) 定义时钟; Verilog代码编写; ModelSim综合电路,输出电路的网表; 编写测试向量,绘制测试波形; 三、目的 四、方案 4.1 描述 变量定义 分析有限状态机状态最多为。先为为名状态投币投币.5元 S2 累计投币1.0元 S3 累计投币.5元 S4 累计投币投币投币 然后考虑了本题目将会使用的变量,做了定义 信号含义 信号作用 clk 时钟信号 上升沿有效 rst 复位信号 低电平有效 money_in 投币信号 两位二进制信号 2b00表示不投币 2b01表示投币0.5元 2b10表示投币1元 check 检查信号 投币结束后检测 上升沿表示检测一次 drink_out 出饮料信号 出饮料状态信号 1表示出饮料 0表示不出饮料 charge 找零信号 在charge信号之后 1表示找零 0表示不找零 money_out 找零钱数信号 三位二进制信号 3b000表示不找零 3b001表示找零0.5元 3b010表示找零1元 3b011表示找零1.5元 3b100表示找零2元 4.1.2 列写状态表 下表中将列写出所有的状态转换 初态 输入 末态 输出 S0 0.5元 S1 S0 1.0元 S2 S1 0.5元 S2 S1 1.0元 S3 S1 check S0 money_out S2 0.5元 S3 S2 1.0元 S4 S2 check S0 money_out S3 0.5元 S4 S3 1.0元 S5 drink_out S3 check S0 money_out S4 0.5元 S5 drink_out S4 1.0元 S6 money_out drink_out S4 check S0 money_out S5 S0 drink_out S6 S0 money_out drink_out 4.1.3 状态图 根据状态表的状态转换,采用定义的,可得出本题目需要的有限状态机状态 其中黄色的线代表投币,绿色的线代表投币,黑色表示的 4.2 售货机代码及测试向量代码 module softdrinkFSM(clk,rst,check,money_in,charge,drink_out,money_out); input [1:0] money_in; input clk,rst; input check; output charge,drink_out; output [2:0] money_o

文档评论(0)

花仙子 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档