自動售货机控制系统.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
自動售货机控制系统

自动售货机控制系统 功能要求: 自动售货机能销售三种商品:热狗1元、汉堡包2元、双层汉堡3元。设数量无限。 自动售货机允许投入1元、2元、5元硬币。当总币值等于顾客需要的商品单价时,机器送出需要的商品,若大于时,机器除提供所需商品外,并将余币退出;若小于,则退出顾客投入的硬币,设计其内1元和2元的找零硬币无限。 如投入的硬币达到或大于所要购买的商品价格,就不必再投入硬币了,自动售货机会发出一个指示信号使接受硬币的装置不再接受新的硬币。 每次投币时间有限,设每次投币时间不超过60秒,在时间到时,总币值不足顾客购买的商品单价时,自动售货机按不足钱数处理,退还全部硬币,或者在设定时间内总投币之不足顾客购买的商品单价时,若需要取消交易则可按取消键,售货机按不足钱数处理,退还全部硬币。 当顾客完成一次购买或按错按钮后,需要设置一个重新开始按钮,使整个系统恢复到初始状态。 顾客一次只能购买一种商品的一个i,若需要更多商品,需重复操作。 二、顶层系统方案构思 1.总体思想: 自动售货机内有三种商品:热狗、汉堡包、双层汉堡,在自动售货机面板上设置三个按钮:A1、A4、A8分别表示上述三种选择,当顾客做出一次选择后,用一个reject1表示A1、A4、A8不再生效。设置三个按钮:coin1、coin2、coin5来表示投入的硬币是1元、2元、5元。当投入的硬币等于或大于顾客选择的商品价格时设置的一拒绝投入显示灯reject2发光,使三个按钮coin1、coin2、coin5无效。当顾客确定某种商品且投入了足额的硬币,投币时限到时,同比窗口找零,用七段显示管闲事找零数,同时送出商品,指示灯out1亮。 2.分步实现: 自动售货机控制系统共设三个状态,在每个状态中完成特定的功能。 (1)初始状态A:当售货机通电,表示一次投币销售过程开始,顾客正常购买商品操作失误包括改变购买意向或不再购买,按start按钮重新进入初始状态:在初始状态A1、A4、A8生效,顾客可以根据自己的需要,选择其中一种商品(只限一种),进入下一状态。 (2)投币状态B:此时,A1、A4、A8失效,reject1亮,表示投入的硬币是1元、2元、5元的coin1、coin2、coin5生效。当投入硬币总额大于或等于商品价格时,进入下一状态:投币时间限制为30秒,超过时限,售货机拒绝接受投币,reject2亮。 (3)找零出货状态:投币结束,售货机自动判别总钱数,若在时限到来时,总钱数少于顾客所需商品的单价,则使退钱驱动器工作,用七段显示器显示退还硬币数;若总钱数等于或大于顾客所需商品的单价,则使找零驱动器工作,用七段显示器显示找零的硬币,同时在送货口送出商品,显示灯out亮,出货、退钱或找零结束时表示一次自动售货过程完成,等待start信号的到来,以便开始下一次售货过程。售货机由外部提供统一1s的基准时钟CP和时钟CP1。 3.划分逻辑电路模块 (1)售货机的选择货物按钮A1(热狗)、A4(汉堡)、A8(双层汉堡)经同步消抖电路和编码电路转换成总线4位二进制数D0、D1、D2、D3,然后送入控制器。编码电路设置了一个使能端EN1,使电路进入A状态时有效,退出时无效。 (2)由于售货机应梦自动计算投入的硬币数,为此用寄存器来记录并保存投入的总币值,称之为计钱器。他在电路处于投币状态时,接收外部来的A11、A21、A51信号,累计币值用总线4位二进制数B0、B1、B2、B3表示,它可与D0、D1、D2、D3比较,当比较结果B小于D时,说明投币总数小于货品单价,则退钱;当B等于D时,则出货口出现顾客购买的商品;当B大于D时,出商品并找零。设置reset信号,使在A状态时输出为高电平有效,计钱器清零;EN2为在C状态下投入硬币窗口有效。 (3)电路中应有定时电路限制投币时间,设置定时时间为1min。一旦定时时间结束,定时电路给控制器送入一应答信号T,则电路状态可以发生转换。 (4)配置一个CP信号发生器,它可作为控制器时钟信号源。如果令CP的周期为1s,则采用计数器作为定时电路时,该信号又可以当作定时电路的计数脉冲。 (5)售货机系统输出。设置一个显示译码器,先是应找的余币;设置一个货物出口用发光二极管out1显示;分别设置reject1和reject2表示拒绝货物输入显示和拒绝接受硬币显示。 现画出自动售货机的逻辑模块划分图,如图1.1所示。 三、自动售货机系统的VHDL程序实现 1.顶层实体的VHDL的程序 library ieee; use ieee.std_logic_1164.all; entity auto is port(start,A1,A4,A8,A11,A21,A51,CP,CP1:IN std_logic; reject1,reject2,out

文档评论(0)

fv45ffsjjI + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档