EDA课程设计--自动售货机.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文档。上传文档
查看更多
太原科技大学:名字起个什么 PAGE 12 目 录 一 设计任务与要求 ……………………………………………3 二 总体框图 ………………………………………………………3 三 模块分析 ………………………………………………………4 1自动售货机系统框图………………………………………………4 2自动售货机工作流程………………………………………………4 3自动售货机源程序和仿真…………………………………………4 四 电路总体设计 …………………………………………………8 1总体电路原理图………………………………………………………8 2时序仿真………………………………………………………………9 3管脚分配图……………………………………………………………11 五 心得体会 ……………………………………………………………12 自动售货机 一 设计任务与要求 能够完成对货物信息的存取、硬币的处理、余额计算与显示等功能。 自动售货机可以出售四种货物,每种商品的数量和单价的初始化时设定并存储在存储器中。采取模拟开关分别模拟5角和1元硬币来进行买卖,并通过按键来选择商品。系统可以根据用户输入的硬币判断硬币是否够,当所投硬币达到或超过购买者所选面值时,则根据顾客的要求自动退货并找回剩余的硬币,然后回到初始状态,当所投硬币不够时,则给出提示,并通过一个按键退回所投硬币,然后回到初始状态。 二 总体框图 自动售货机的总体框图如图1所示。 图1 总体框图 三 模块分析 分析系统设计要求,不难得知自动售货机系统可以通过多进程设计的方法实现。其中最主要也是最核心的进程控制自动售货机的货物信息储备、购买、价格计算、找币等功能,其他进程则负责选择商品种类的指示译码、消费品种单价和消费总价的显示译码等。 1 自动售货机的系统框图如图2所示。 其中,clk为输入时钟脉冲信号,set为货物信息存储信号,get为购买信号,sel为货物选择信号,finish为购买完成信号,coin0和coin1分别为5角和1元的投币,price[3..0]和quantity[3..0]分别为商品价格和数量。 输出信号中,item0[3..0]和act[3..0]指示选择商品的种类并译码输出,y0输出购买消费的钱数,y1输出购买商品的单价,act10和act5分别表示找零的1元和5角的硬币数量。 图2 系统框图 2 自动售货机的工作流程如下: 当置数信号set为高电平时,对商品的单价、数量进行相应的设置;在每一次购买前,先对投入的硬币数量清零;购买时,首先以5角为基本单位对投入的硬币数量进行计数;当选择信号sel高电平有效时,选择所要购买的商品;当get信号高电平有效时,购买所选择的商品;当finish信号高电平有效时,结束交易并找币操作;当get信号为低电平时,则显示商品的价格及其数量。 3 自动售货机源程序和仿真 自动售货机VHDL源程序如下: library ieee; use ieee.std_logic_arith.all; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; entity PL_auto1 is port ( clk:in std_logic; --系统时钟 set,get,sel,finish: in std_logic; --设定、买、选择、完成信号 coin0,coin1: in std_logic; --5角硬币、1元硬币 price,quantity :in std_logic_vector(3 downto 0); --价格、数量数据 item0 , act:out std_logic_vector(3 downto 0); --显示、开关信号 y0,y1 :out std_logic_vector(6 downto 0); --钱数、商品数量显示数据 act10,act5 :out std_logic); --1元硬币、5角硬币 end PL_auto1; architecture behav of PL_au

文档评论(0)

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

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

1亿VIP精品文档

相关文档