基于FPGA设计的自动售货机报告.doc

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
基于FPGA设计的自动售货机报告

《FPGA技术》 课 程 报 告 指导老师: 房梦旭 姓 名: 张 强 班 级: 212361 学 号: 121802 航空电子工程系 2014年5月 目录 一、引言 二、语言介绍 三、功能要求 四、结果与分析讨论 五、附录 一、引言 自动售货机是能根据投入的钱币自动付货的机器。自动售货机是商业自动化的常用设备,它不受时间、地点的限制,能节省人力、方便交易。一般的自动售货机由钱币装置、指示装置、贮藏售货装置等组成。钱币装置是售货机的核心,其主要功能是确认投入钱币的真伪,分选钱币的种类,计算金额。如果投入的金额达到购买物品的数值即发出售货信号,并找出余钱。指示装置用以指示顾客所选商品的品种。贮藏售货装置保存商品,接收出售指示信号,把顾客选择的商品送至付货口。一般售货机的钱币装置由投币口、选别装置、确认钱币真伪的检查装置、计算金额的计算装置和找钱装置组成。,自动售货机在人们日常生活中扮演越来越重要的角色。其产品特点是科技含量高;24 小时服务,售货便利;无需专人盯守,省人工,省成本;售货范围广泛;此外还是一种新颖独特的广告媒体。目前,随着移动商务的发展,自动售货机作为一种方便、直观的移动商务工具,开始在全球各地迅速普及和发展。 二、采用Verilog HDL语言编写 硬件描述语言(Hradware Description Language ,HDL)是一种按软件的方式进行数字期间设计的方法。HDL允许设计者无需逻辑框图便可用精确标示 优点: 缩短了产品从研发到上市的时间; 在设计转变成最终的硬件实现之前,可以不断地对设计进行验证和测试。 Verilog HDL是一种用于数字逻辑电路设计的硬件描述语言(HDL),可以用来进行数字电路的仿真验证、时序分析、逻辑综合。 用Verilog HDL描述的电路设计就是该电路的Verilog HDL模型。 Verilog HDL 既是一种行为描述语言也是一种结构描述语言,它的使用比VHDL广泛。 既可以用电路的功能描述,也可以用元器件及其之间的连接来建立Verilog HDL模型。 另外一种HDL语言是VHDL(Very High Speed Integrated Circuit HDL). Verilog HDL的语法比较接近于C语言,但也用到了一些类似于Pascal的语法。用来对从逻辑门到复杂的数字系统进行抽象和建模。目前,它是工业界使用最广泛的一种HDL,可以描述组合逻辑和时序逻辑,也可以描述电平敏感和由边缘触发的存储设备。 Verilog支持两种设计方法:自上而下和自下而上。 三、 功能要求 1.该系统能完成对货物信息的存储、进程控制、钱币处理、余额计算和显示功能。 2.举例说明:如果自动售货机能够销售4种商品:热狗(1元),汉堡包(4元),双层汉堡包(8元),饮料(3元)数量无限。自动售货机允许投入1元,0.5元硬币:当总币值等于顾客需要的商品单价时,机器送出需要的商品:若总币值大于顾客需要的商品单价时,机器除提供所需商品外,并将余币退出;若总币值小于顾客需要的商品单价时,机器退出顾客投入的硬币。设机器内1元和0.5元的找零硬币无限。 3.当顾客完成一次购买后或按错按钮后,需要设置一个重新开始按钮,使整个系统恢复到初始状态。 4.顾客一次只能购买一种商品的一个,若需要更多商品,需要重复操作。 四、结果与分析讨论 通过设计简单的自动售货机,详细了解了自动售货机的投币模块,商品选择模块,主控模块等模块的软件设计与实现主要功能的模块的仿真。经过仿真与实践,整个系统的工作稳定可靠,具有较强的适应性,当需要增加商品时,此控制系统只需增加相对的输入信号,硬件原有的电路不应改变,因此在自动售货机行业可以得到广泛的应用。不过缺点是只能完成相对比较简单的自动售货机功能,实现金额计算,发放商品,找零,退币等功能。由于其中是商品存货无限,找零无限,因此不会出现找零钱币与商品存货的不足的情况。解决办法是通过增加模块,与输入信号来解决。 仿真过程中遇到的问题主要有: 1、在仿真过程中由于原有时钟信号分频模块仿真时间过长,因此用频率相对较小的晶振进行代替仿真; 2、仿真过程中找零所得钱币数目不能达到预期效果,通过调整主控模块程序已得到解决。 五、附录 1)程序 /*信号定义: Clk : 系统输入时钟 Reset: 系统复位信号 Half_dollar: 投入5角硬币 One_dollar: 投入1元硬币 Half_out : 找零5角 Dispense : 售出一件商品 Collect: 提示投币者取走商品 */ module sell(dispense,c

文档评论(0)

haocen + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档