1。2 发展现状
1。2。1 自动售货机的发展现状
1。2。2 EDA发展及应用趋势
1。3 课题设计任务
本次要完成的自动售货机,将利用Verilog HDL语言设计实现其功能。具体实现内容如下:
(1)设计一个能够完成货物信息存储,投币处理,余额计算,显示等功能的自动售货机;
(2)自动售货机能出售价格不同的四种商品,商品价格可通过程序进行修改;
(3)顾客投入硬(纸)币的钱数有0。5元、1元、5元三种,假设一次只能投入其中的一种钱币,投币额足够时自动送出货物,同时多余的钱找回,找回的钱数和选择商品种类用数码管显示出来;
(4)顾客一次只能购买一种商品,若需要购买更多商品,需要重复操作以上过程。
第二章 总体方案设计
本章主要介绍设计自动售货机系统所选的方案,通过比较各个方案的优缺点并考虑本次设计要求,选择一个合适的方案。并对该方案中所要用到的各类技术、语言、软件做详细介绍。
2。1 总体框图设计
本次设计出来的自动售货机,为了方便顾客进行购买,按要求应该具有供顾客选择购买的商品选择按键、投币按键、确认购买键,以及显示找零余额及出货的数码管、投币不足的警示灯。如图2-1所示。
图2-1: 自动售货机操作界面
按键控制输入电路主要的作用是给顾客购买时进行选择,有八个开关控制输入信号即顾客选择的商品信号、顾客投币类别信号以及顾客确认消费信号,起到了一个输入控制的作用。主控器件是实现自动售货机正常工作的重要控制模块,它是这次设计的核心内容,通过将接收投币金额与商品价格进行对比,并输出信号给数码管。数码管接收并显示主控器件的输出信号,即找零环节中顾客所选的商品种类、顾客购买结束后得到的余钱值。而时钟电路可以使整个自动售货机的工作更加稳定。
2。2 方案选择
本设计可以通过多种方案来实现,下面就针对最主要的三种方案进行介绍和比较。
方案一:由于现在的单片机的设计已经十分成熟,而且单片机的应用也十分广泛。因此采用单片机来设计实现自动售货机也是可行的。它的原理图与使用FPGA来实现自动售货机的原理图类似。而且单片机与FPGA的基本原理相同,唯一不同的是运用的器件不同。采用单片机来设计实现自动售货机,其核心内容是单片机程序的设计。
方案二:可以使用FPGA(可编程逻辑器件)来实现自动售货机的设计,通过Verilog HDL硬件描述语言编写程序,编译仿真后下载到硬件并进行调试。
方案三:可以使用电子逻辑电路来制作自动售货机,这需要通过使用IC器件连接并焊接外围的电路来实现。这样的电路看起来很直观,而且简单方便。但是应用数字逻辑电路制作,耗费的时间比较长,而且做出来的设备连接复杂,体积大,功耗大,电路中的电路比较多,做出来的成品稳定性比较差。论文网
方案比较:对于本次自动售货机的设计,无论是用着三种方案中的哪种方案都是可以实现的,方案一虽然比较方便,但是它有一个很大缺点,使用单片机来实现自动售货机对设计者的要求很高,要求设计者对软硬件都很熟悉。和方案二比起来它的实验设计方法没有方案二那么简单直观,而且单片机调试也比较困难。在相同的外界环境中,方案一设计出来的产品稳定性和精确性比方案二设计出来的产品要略逊一筹。方案二采用的是现场可编程逻辑器件FPGA来实现自动售货机,它使所有的电路都集成在一个芯片上,这样使设计自动售货机所需要的外围电路变得简单,同时让硬件设备体积变小,系统的稳定性和精确度也能大大提高。同时使用FPGA来实现自动售货机还能通过使用Quartus II软件对整体程序各个模块进行软件仿真和硬件调试,能够提前发现一些问题。可以充分利用HDL硬件描述语言方便的编写程序,极大的提高开发的效率,缩短了开发周期,并且降低成本;而且此法设计还能方便对自动售货机进行功能扩展,能让设计的实现方法更加灵活,同时让调试更加方便,修改变得容易。就如方案三介绍的那样,使用数字逻辑电路制作的话,硬件所需要的器材多,体积大,只做起来比较复杂,而且成品的稳定性差,使用时容易出错。因此,本次自动售货机的设计将采用方案二来实现。