自动售货机课程设计.doc
《自动售货机课程设计.doc》由会员分享,可在线阅读,更多相关《自动售货机课程设计.doc(69页珍藏版)》请在咨信网上搜索。
自动售货机课程设计 63 2020年4月19日 文档仅供参考,不当之处,请联系改正。 唐 山 学 院 《EDA技术》 课 程 设 计 题 目 自动售货机控制器设计 系 (部) 班 级 姓 名 学 号 指导教师 年 月 日至 月 日 共 周 年 月 日 《EDA技术》 课程设计任务书 一、设计题目、内容及要求 设计题目:《自动售货机控制器设计》 设计内容: (1)设计一个自动售货机,此机能出售1元、5元、10元三种商品。出售哪种商品可由顾客按动相应的一个按键即可,并同时用数码管显示出此商品的价格; (2)顾客投入硬(纸)币的钱数也是有1元、5元、10元三种,但每次只能投入其中的一种币,此操作经过按动相应的一个按键来模拟,并同时用数码管将投币额显示出来; (3)顾客投币后,按一次确认键,如果投币额不足时则报警,报警时间3秒。如果投币额足够时自动送出货物(送出的货物用相应不同的指示灯显示来模拟),同时多余的钱应找回,找回的钱数用数码管显示出来; (4)顾客一旦按动确认键3秒后,自动售货机即可自动恢复到初始状态,此时才允许顾客进行下一次购货操作; (5)售货机还应具有供商家使用的累加卖货额的功能,累加的钱数要用数码管显示,显示2位即可。此累加器只有商家能够控制清零;(选作内容) (6)此售货机要设有一个由商家控制的整体复位控制; 设计要求: (1)根据任务要求确定状态关系,画出状态转换图; (2)写出设计程序; (3)给出时序仿真结果; (4)最后要有设计总结; 二、设计原始资料 QuartusⅡ软件,EDA实验箱 三、要求的设计成果(课程设计说明书、设计实物、图纸等) 课程设计说明书 四、进程安排 第一周:周1-周5 查阅资料并编写程序, 第二周:周1-周4 上机调试程序并撰写课程设计说明书 第二周:周5下午 课程设计答辩并交设计说明书 五、主要参考资料 [1].Voknei A.Pedroni.《VHDL数字电路设计教程》.电子工业出版社, .5 [2].潘松,黄继业.《EDA技术实用教程》(第二版).科学出版社, .2 [3].焦素敏.《EDA应用技术》.清华大学出版社, .4 指导教师(签名): 教研室主任(签名): 课程设计成绩评定表 出勤 情况 出勤天数 缺勤天数 成 绩 评 定 出勤情况及设计过程表现(20分) 课设答辩(20分) 设计成果(60分) 总成绩(100分) 提问 (答辩) 问题 情况 综 合 评 定 指导教师签名: 年 月 日 目 录 1 引言 1 2 VHDL介绍 2 2.1硬件描述语言VHDL 2 2.2VHDL语言的特点 3 3 Quartus II介绍 4 3.1 Quartus II软件介绍 4 3.2 Quartus II软件界面介绍 4 3.2.1代码输入界面 4 3.2.2编译界面 5 3.2.3波形仿真界面 5 4自动售货机控制器设计与仿真 7 4.1设计内容 7 4.2输入与输出说明 7 4.3状态转换图 8 4.4程序及仿真波形分析 8 5引脚设定及下载分析 18 5.1引脚设定 18 5.2程序下载 18 5.3结果分析 19 6设计总结 20 参考文献 21 附录 22 1 引言 VHDL的英文全名是VHSIC(Very High Speed Integrated Circuit)Hardware Descriptiong Language, 翻译成中文就是超高速集成电路硬件描述语言,诞生于1982年。1987年底,VHDL被美国国防部确认为标准硬件描述语言 。 自IEEE公布了VHDL的标准版本,IEEE-1076之后,各EDA公司相继推出了自己的VHDL设计环境,或宣布自己的设计工具能够和VHDL接口。1993年,IEEE对VHDL进行了修订,从更高的抽象层次和系统描述能力上扩展VHDL的内容,公布了新版本的VHDL,即IEEE标准的1076-1993版本。 现在,VHDL和Verilog作为IEEE的工业标准硬件描述语言,又得到众多EDA公司的支持,在电子工程领域,已成为事实上的通用硬件描述语言。有专家认为,在新的世纪中,VHDL于Verilog语言将承担起大部分的数字系统设计任务。当前,它在中国的应用多数是用在FPGA/CPLD/EPLD的设计中。当然在一些实力较为雄厚的单位,它也被用来设计ASIC。 随着EDA技术的高速发展,电子系统的设计技术和工具发生了深刻的变化,大规模可编程逻辑器件CPLD/FPGA的出现,给设计人员带来了诸多方便。利用它进行产品开发,不但成本低、周期短、可靠性高,而且具有完全的知识产权。利用VHDL语言设计自动售货机,使其实现自动售货,找零钱等功能,突出了其作为硬件描述语言的良好的可读性、可移植性和易读性等优点。此程序经过下载到特定芯片后,可应用于实际的自动售货机系统中。 本文基于FPGA开发系统,在QuartusII 7.2软件平台上,完成了自动售货机控制器的设计和与仿真,并下载到试验箱进行硬件实现。首先,本文介绍了QuartusII 7.2软件的基本使用方法和VHDL硬件描述语言的特点,采用VHDL 硬件描述语言描述自动售货机控制器,完成对电路的功能仿真;在设计过程中,重点探讨了自动售货机控制器的设计思路和功能模块划分;然后,初步探讨了电路逻辑综合的原理,该软件对自动售货机控制器电路进行了逻辑综合;最后,使用EDA实验开发系统进行电路的下载和验证,验证结果表明设计的自动售货机控制器完成了预期的功能。 2 VHDL介绍 2.1硬件描述语言VHDL VHDL是一种硬件描述语言,它能够对电子电路和系统的行为进行描述。硬件描述语言(VHDL)是一种用于设计硬件电子系统的计算机语言,它用软件编程的方式来描述电子系统的逻辑功能、电路结构和连接形式,与传统的门级描述方式相比,它更适合大规模系统的设计。VHDL语言可读性强,易于修改和发现错误。早期的硬件描述语言,如ABEL、HDL、AHDL,由不同的EDA厂商开发,互不兼容,而且不支持多层次设计,层次间翻译工作要由人工完成。为了克服以上不足,1985年美国国防部正式推出了高速集成电路硬件描述语言VHDL,1987年IEEE采纳VHDL为硬件描述语言标准(IEEE-STD-1076)。 传统的硬件电路设计方法是采用自下而上的设计方法,即根据系统对硬件的要求,详细编制技术规格书,并画出系统控制流图;然后根据技术规格书和系统控制流图,对系统的功能进行细化,合理地划分功能模块,并画出系统的功能框图;接着就进行各功能模块的细化和电路设计;各功能模块电路设计、调试完成后,将各功能模块的硬件电路连接起来再进行系统的调试,最后完成整个系统的硬件设计。采用传统方法设计数字系统,特别是当电路系统非常庞大时,设计者必须具备较好的设计经验,而且繁杂多样的原理图的阅读和修改也给设计者带来诸多的不便。为了提高开发的效率,增加已有开发成果的可继承性以及缩短开发周期,各ASIC研制和生产厂家相继开发了具有自己特色的电路硬件描述语言(Hardware Description Language,简称HDL)。但这些硬件描述语言差异很大,各自只能在自己的特定设计环境中使用,这给设计者之间的相互交流带来了极大的困难。因此,开发一种强大的、标准化的硬件描述语言作为可相互交流的设计环境已势在必行。于是,美国于1981年提出了一种新的、标准化的HDL,称之为VHSIC(Very High Speed Integrated Circuit) Hardware Description Language,简称VHDL。这是一种用形式化方法来描述数字电路和设计数字逻辑系统的语言。设计者能够利用这种语言来描述自己的设计思想,然后利用电子设计自动化工具进行仿真,再自动综合到门电路,最后用PLD实现其功能。 VHDL是一种全方位的硬件描述语言,包括系统行为级。寄存器传输级和逻辑门多个设计层次,支持结构、数据流和行为三种描述形式的混合描述,因此VHDL几乎覆盖了以往各种硬件语言的功能,整个自顶向下或由下向上的电路设计过程都能够用VHDL来完成。VHDL还具有以下优点: (1)VHDL的宽范围描述能力使它成为高层进设计的核心,将设计人员的工作重心提高到了系统功能的实现与调试,而花较少的精力于物理实现。 (2)VHDL能够用简洁明确的代码描述来进行复杂控制逻辑设计,灵活且方便,而且也便于设计结果的交流、保存和重用。 (3)VHDL的设计不依赖于特定的器件,方便了工艺的转换。 (4)VHDL是一个标准语言,为众多的EDA厂商支持,因此移植性好。 关于VHDL语言,最后需要说明的是:与常规的顺序执行的计算机程序不同,VHDL从根本上讲是并发执行的。因此,,我们一般称之为代码,而不是程序。在VHDL中,只有在进程(PROCESS)、函数(FUNCTION)和过程(PROCEDURE)内部的语句才是顺序执行的。 2.2VHDL语言的特点 具有良好的可读性,即容易被计算机接受,也容易被读者理解。使用期长,不会因工艺变化而使描述过时。因为VHDL的硬件描述与工艺无关,当工艺改变时,只需修改相应程序中的属性参数即可。 当电路系统采用VHDL语言设计其硬件时,与传统的电路设计方法相比较,具有如下的特点: 第一层次是行为描述。所谓行为描述,实质上就是对整个系统的数学模型的描述。一般来说,对系统进行行为描述的目的是试图在系统设计的初始阶段,经过对系统行为描述的仿真来发现设计中存在的问题。在行为描述阶段,并不真正考虑其实际的操作和算法用何种方法来实现,而是考虑系统的结构及其工作的过程是否能到达系统设计的要求。 第二层次是RTL方式描述。这一层次称为寄存器传输描述(又称数据流描述)。如前所述,用行为方式描述的系统结构的程序,其抽象程度高,是很难直接映射到具体逻辑元件结构的。要想得到硬件的具体实现,必须将行为方式描述的VHDL语言程序改写为RTL方式描述的VHDL语言程序。也就是说,系统采用RTL方式描述,才能导出系统的逻辑表示式,才能进行逻辑综合。 第三层次是逻辑综合。即利用逻辑综合工具,将RTL方式描述的程序转换成用基本逻辑元件表示的文件(门级网络表)。此时,如果需要,可将逻辑综合的结果以逻辑原理图的方式输出。此后可对综合的结果在门电路级上进行仿真,并检查其时序关系。 由自上而下的设计过程可知,从总体行为设计开始到最终的逻辑综合,每一步都要进行仿真检查,这样有利于尽早发现设计中存在的问题,从而能够大大缩短系统的设计周期。 由于当前众多制造PLD芯片的厂家,其工具软件均支持VHDL语言的编程。因此利用VHDL语言设计数字系统时,能够根据硬件电路的设计需要,自行利用PLD设计自用的ASIC芯片,而无需受通用元器件的限制。 3 Quartus II介绍 3.1 Quartus II软件介绍 Quartus II 是Altera公司单芯片可编程系统(SOPC)设计的综合性环境,也是适合SOPC的最全面的设计环境。拥有现场可编程门阵列(FPGA)和复杂可编程逻辑器件(CPLD)设计的所有解决方案。Altera的Quartus II可编程逻辑软件属于第四代PLD开发平台,该平台支持一个工作组环境下的设计要求,其中包括支持原理图、VHDL、VerilogHDL以及AHDL(Altera Hardware Description Language)等多种设计输入形式,内嵌自有的综合器以及仿真器,能够完成从设计输入到硬件配置的完整PLD设计流程。 Quartus II也支持第三方的仿真工具,对第三方EDA工具的良好支持也使用户能够在设计流程的各个阶段使用熟悉的第三方EDA工具。Quartus II还支持层次化设计,能够在一个新的编辑环境中对使用不同输入设计方式完成的模块进行调用,从而解决了原理图与HDL混合输入设计的问题,而且在输入之后,Quartus II的编译器将给出设计输入的错误报告。 Quartus II能够在XP、Linux以及Unix上使用,除了能够使用Tcl脚本完成设计流程外,提供了完善的用户图形界面设计方式。具有运行速度快,界面统一,功能集中,易学易用等特点。 Quartus II支持Altera的IP核,包含了LPM/MegaFunction宏功能模块库,使用户能够充分利用成熟的模块,简化了设计的复杂性、加快了设计速度。 Maxplus II 作为Altera的上一代PLD设计软件,由于其出众的易用性而得到了广泛的应用。当前Altera已经停止了对Maxplus II 的更新支持,Quartus II 与之相比不但仅是支持器件类型的丰富和图形界面的改变。Altera在Quartus II 中包含了许多诸如SignalTap II、Chip Editor和RTL Viewer的设计辅助工具,集成了SOPC和HardCopy设计流程,而且继承了Maxplus II 友好的图形界面及简便的使用方法。 Altera 公司的Quartus II 作为一种可编程逻辑的设计环境, 由于其强大的设计能力和直观易用的接口,越来越受到数字系统设计者的欢迎。 3.2 Quartus II软件界面介绍 3.2.1代码输入界面 新建一个工程,选择File→New Project Wizard,在出现的对话框中输入工作路径和工程名称(应与实体名称相同),新建完工程后,选择File→New→VHDL File,然后新出现的空白窗口中输入代码,代码输入界面如图3-1所示: 图3-1 代码输入界面 3.2.2编译界面 代码输入完毕后,选择Processing→Start Compilation或直接单击(Start Compilation)进行编译,编译界面如图3-2所示: 图3-2 编译界面 3.2.3波形仿真界面 编译没有错误后,选择File→New→Vector Waveform File,自己设置输入的值,设置好后单击进行波形仿真,仿真前界面如图3-3所示: 图3-3波形仿真前界面 仿真后界面如图3-4所示: 图3-4波形仿真后界面 4 自动售货机控制器设计与仿真 4.1设计内容 (1)设计一个自动售货机,此机能出售1元、5元、10元三种商品,出售哪种商品可由顾客按动相应的一个按键即可,并同时用数码管显示出此商品的价格; (2)顾客投入硬(纸)币的钱数也是有1元、5元、10元三种,但每次只能投入其中的一种币,此操作经过按动相应的一个按键来模拟,并用数码管将投币额显示出来; (3)顾客投币后,按一次确认键,如果投币额不足时则报警,报警时间3秒。如果投币额足够时自动送出货物(送出的货物用相应不同的指示灯显示来模拟),同时多余的钱应找回,找回的钱数用数码管显示出来; (4)顾客一旦按动确认键3秒后,自动售货机即可自动恢复到初始状态,此时才允许顾客进行下一次购货操作; (5)售货机还应具有供商家使用的累加卖货额的功能,累加的钱数要用数码管显示,显示2位即可。此累加器只有商家能够控制清零; (6)此售货机要设有一个由商家控制的整体复位控制。 4.2输入与输出说明 (1)输入: price1、price5、price 10分别控制选择1元、5元、10元三种商品; put1、put5、put10分别是顾客投入硬(纸)币的钱数1元、5元、10元; ok是确认输入,rst是由商家控制的整体复位控制输入。 (2)输出: warning是警告输出(当按下“确认”后,若投入金额低于商品价格,则输出警告); out1、out,out10分别是1元、5元、10元三种商品输出指示; digitprice用于显示商品价格,digitput用于显示用户投入金额,digitback用于显示找回给用户的金额; sumhigh表示累加的卖货额的高位,sumlow表示累加的卖货额的低位,累加的卖货额最高显示到99。 4.3状态转换图 状态转换图如图4-1所示: 图4-1状态转换图 4.4程序及仿真波形分析 (1) S0为初始状态,当顾客选择1元、5元或10元三种商品时分别跳转至S1、S2、S3状态,否则停留在S0状态,选择货物的钱数在数码管上显示出来,程序代码如下所示: when s0=>warning<='0';out1<='0';out5<='0';out10<='0'; digitprice<=0;digitput<=0;digitback<=0; if (price1='1' and price5='0' and price10='0') then nx<=s1; elsif (price1='0' and price5='1' and price10='0') then nx<=s2; elsif (price1='0' and price5='0' and price10='1') then nx<=s3; else nx<=s0; end if; (2)当顾客投币为1元、5元或10元时,若当前为S1状态,则分别跳转至S4、S5、S6三种状态,投币钱数显示在数码管上,否则停留在S1状态,程序如下所示: when s1=> digitprice<=1;digitput<=0;digitback<=0; if (put1='1' and put5='0' and put10='0') then nx<=s4; elsif (put1='0' and put5='1' and put10='0') then nx<=s5; elsif put1='0' and put5='0' and put10='1' then nx<=s6; else nx<=s1; end if; when s4=> digitprice<=1;digitput<=1;digitback<=0; if (ok='1') then nx<=s13; else nx<=s4; end if; when s5=> digitprice<=1;digitput<=5;digitback<=0; if (ok='1') then nx<=s14; else nx<=s5; end if; when s6=> digitprice<=1;digitput<=10;digitback<=0; if (ok='1') then nx<=s15; else nx<=s6; end if; 此种情况下的仿真波形如图4-2所示: 图4-2仿真波形图 由图可知,当选中1元商品时,数码管digitprice显示1,其它数码管显示0,若顾客投入1元钱时,数码管digitput显示1,按下ok后,out1为“1”,数码管digitback显示0;若顾客投入5元钱时,数码管digitput显示5,按下ok后,out1为“1”,数码管digitback显示4;若顾客投入10元钱时,数码管digitput显示10,按下ok后,out1为“1”,数码管digitback显示9。 (3)当顾客投币为1元、5元或10元时,若当前为S2状态,则分别跳转至S7、S8、S9三种状态,投币钱数显示在数码管上,否则停留在S2状态,程序如下所示: when s7=>digitprice<=5;digitput<=1;digitback<=0; if (ok='1') then nx<=s16; elsif(put1='1' and put5='0' and put10='0')then nx<=s22; else nx<=s7; end if; when s22=>digitprice<=5;digitput<=2;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s23; else nx<=s22; end if; when s23=>digitprice<=5;digitput<=3;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s24; else nx<=s23; end if; when s24=>digitprice<=5;digitput<=4;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s25; else nx<=s24; end if; when s25=>digitprice<=5;digitput<=5;digitback<=0; if(ok='1') then nx<=s17; else nx<=s25; end if; 此种情况下的仿真波形如图4-3和图4-4所示,由图4-3可知,当选中5元商品时,数码管digitprice显示5,若顾客投入1元钱时,数码管digitput显示1,按下ok后,out5为“0”,数码管digitback显示1,warning为“1”,三个上升沿即3秒后复位;若顾客投入5元钱时,数码管digitput显示5,按下ok后,out5为“1”,数码管digitback显示0;若顾客投入10元钱时,数码管digitput显示10,按下ok后,out5为“1”,数码管digitback显示5。 图4-3仿真波形图 由于此售货机具有累加投币功能,因此若选中5元商品,投入5个1元的,也能够买到一个5元商品, 数码管digitprice显示5,数码管digitput显示由1到5, 按下ok后,out5为“1”,数码管digitback显示0,其仿真波形图如图4-4所示: 图4-4仿真波形图 (4)当顾客投币为1元、5元或10元时,若当前为S3状态,则分别跳转至S10、S11、S12三种状态,投币钱数显示在数码管上,否则停留在S3状态,程序如下所示: when s3=>digitprice<=10;digitput<=0;digitback<=0; if (put1='1' and put5='0' and put10='0') then nx<=s10; elsif (put1='0' and put5='1' and put10='0') then nx<=s11; elsif (put1='0' and put5='0' and put10='1') then nx<=s12; else nx<=s3; end if; when s10=>digitprice<=10;digitput<=1;digitback<=0; if(ok='1') then nx<=s19; elsif(put1='1' and put5='0' and put10='0')then nx<=s26; else nx<=s10; end if; when s26=>digitprice<=10;digitput<=2;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s27; else nx<=s26; end if; when s27=>digitprice<=10;digitput<=3;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s28; else nx<=s27; end if; when s28=>digitprice<=10;digitput<=4;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s29; else nx<=s28; end if; when s29=>digitprice<=10;digitput<=5;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s30; else nx<=s29; end if; when s30=>digitprice<=10;digitput<=6;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s31; else nx<=s30; end if; when s31=>digitprice<=10;digitput<=7;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s32; else nx<=s31; end if; when s32=>digitprice<=10;digitput<=8;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s33; else nx<=s32; end if; when s33=>digitprice<=10;digitput<=9;digitback<=0; if(put1='1' and put5='0' and put10='0')then nx<=s34; else nx<=s33; end if; when s34=>digitprice<=10;digitput<=10;digitback<=0; if(ok='1') then nx<=s21; else nx<=s34; end if; when s11=>digitprice<=10;digitput<=5;digitback<=0; if(ok='1') then nx<=s20; elsif(put1='0' and put5='1' and put10='0')then nx<=s35; else nx<=s11; end if; when s35=>digitprice<=10;digitput<=10;digitback<=0; if(ok='1')then nx<=s21; else nx<=s35; end if; when s12=>digitprice<=10;digitput<=10;digitback<=0; if (ok='1') then nx<=s21; else nx<=s12; end if; 此种情况下的仿真波形如下图,由4-5图可知,当选中10元商品时,数码管digitprice显示10,若顾客投入1元钱时,数码管digitput显示1,按下ok后,out10为“0”,数码管digitback显示1,warning为“1”,三个上升沿即3秒后复位;若顾客投入5元钱时,数码管digitput显示5,按下ok后,out10为“0”,数码管digitback显示5,warning为 “1”,三个上升沿即3秒后复位;若顾客投入10元钱时,数码管digitput显示10,按下ok后,out10为“1”,数码管digitback显示0。 图4-5仿真波形图 由于此售货机具有累加投币功能,因此若想买10元的商品,顾客能够投入两个5元的或投入10个1元的,其仿真波形分别如图4-6和图4-7所示: 图4-6投两个5元仿真波形图 图4-7投10个1元仿真波形图 (5)延时子程序如下所示: if(a='1') then temp:=temp+1; if(temp=3)then b<='1'; else b<='0'; end if; end if; 3个上升沿即表示3秒的延时,当按下ok后经过3个上升沿自动售货机将复位进入S0状态。 (6)累加售货额程序 process(out1,out5,out10,clk) variable t:integer range 0 to 3; variable temp3,temp4:integer range 0 to 9; begin if(rst='1')then temp3:=0; temp4:=0; elsif(clk'event and clk='1'and(out1='1' or out5='1' or out10='1'))then t:=t+1; if(t=3 and out1='1')then temp3:=temp3+1; end if; if(t=3 and out5='1')then temp3:=temp3+5; end if; if(t=3 and out10='1')then temp4:=temp4+1; end if; if(temp3>9)then temp4:=temp4+1; temp3:=temp3-10; end if; if(t=4)then t:=0; end if; end if; sumlow<=temp3; sumhigh<=temp4; end process; 程序中t表示延时,当上升沿到来而且有商品输出时,t开始加1,当加到4时在重新计数。当延时3秒而且有商品输出时,累加售货额将开始累加钱数并显示在数码管上,当累加的售货额低于10元时,sumhigh不变,sumlow加数,当累加售货额不低于10元时,sumlow显示的结果为sumlow-10的结果,sumhigh进行加数。例如,若先卖出了一个5元的商品,则sumlow显示5,sumhigh显示0;若再卖出一个10元的商品,则低位sumlow显示仍为5,高位sumhigh会显示1。 5 引脚设定及下载分析 5.1引脚设定 选择Assignments→Pins然后设定引脚,引脚设定界面如图5-1所示: 图5-1引脚设定界面 5.2程序下载 引脚设定好后,将下载盒子插到USB接口,点击,选择Hardward和start当下载到100%时,就能够经过试验箱进行验证,下载验证如图5-2所示: 图5-2程序下载验证 图5-2显示的是卖了两个10元的商品和一个5元的商品,累加的金额为25元。 5.3结果分析 经过上面的步骤将程序代码下载到实验箱的FPGA芯片中,并验证了在仿真中的结果的正确性。自动售货机能出售1元、5元、10元三种商品,出售哪种商品可由顾客按动相应的一个按键即可,并同时用数码管显示出此商品的价格;顾客投入硬(纸)币的钱数也是有1元、5元、10元三种,但每次只能投入其中的一种币,此操作经过按动相应的一个按键来模拟,并同时用数码管将投币额显示出来;顾客投币后,按一次确认键,如果投币额不足时则报警,报警时间3秒。如果投币额足够时自动送出货物(送出的货物用相应不同的指示灯显示来模拟),同时多余的钱应找回,找回的钱数用数码管显示出来;顾客一旦按动确认键3秒后,自动售货机即可自动恢复到初始状态,此时才允许顾客进行下一次购货操作;此售货机设有一个由商家控制的整体复位控制,当整体复位信号有效时,所有输出均为零。 例如,当选中1元商品时,数码管digitprice显示1,其它数码管显示0,若顾客投入1元钱时,数码管digitput显示1,按下ok后,out1为“1”,数码管digitback显示0;若顾客投入5元钱时,数码管digitput显示5,按下ok后,out1为“1”,数码管digitback显示4;若顾客投入10元钱时,数码管digitput显示10,按下ok后,out1为“1”,数码管digitback显示9。当选中5元商品时,数码管digitprice显示5,若顾客投入1元钱时,数码管digitput显示1,按下ok后,out5为“0”,数码管digitback显示1,warning为“1”,三个上升沿即3秒后复位;若顾客投入5元钱时,数码管digitput显示5,按下ok后,out5为“1”,数码管digitback显示0;若顾客投入10元钱时,数码管digitput显示10,按下ok后,out5为“1”,数码管digitback显示5。当选中10元商品时,数码管digitprice显示10,若顾客投入1元钱时,数码管digitput显示1,按下ok后,out10为“0”,数码管digit- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 自动 售货 课程设计
咨信网温馨提示:
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
1、咨信平台为文档C2C交易模式,即用户上传的文档直接被用户下载,收益归上传人(含作者)所有;本站仅是提供信息存储空间和展示预览,仅对用户上传内容的表现方式做保护处理,对上载内容不做任何修改或编辑。所展示的作品文档包括内容和图片全部来源于网络用户和作者上传投稿,我们不确定上传用户享有完全著作权,根据《信息网络传播权保护条例》,如果侵犯了您的版权、权益或隐私,请联系我们,核实后会尽快下架及时删除,并可随时和客服了解处理情况,尊重保护知识产权我们共同努力。
2、文档的总页数、文档格式和文档大小以系统显示为准(内容中显示的页数不一定正确),网站客服只以系统显示的页数、文件格式、文档大小作为仲裁依据,个别因单元格分列造成显示页码不一将协商解决,平台无法对文档的真实性、完整性、权威性、准确性、专业性及其观点立场做任何保证或承诺,下载前须认真查看,确认无误后再购买,务必慎重购买;若有违法违纪将进行移交司法处理,若涉侵权平台将进行基本处罚并下架。
3、本站所有内容均由用户上传,付费前请自行鉴别,如您付费,意味着您已接受本站规则且自行承担风险,本站不进行额外附加服务,虚拟产品一经售出概不退款(未进行购买下载可退充值款),文档一经付费(服务费)、不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
4、如你看到网页展示的文档有www.zixin.com.cn水印,是因预览和防盗链等技术需要对页面进行转换压缩成图而已,我们并不对上传的文档进行任何编辑或修改,文档下载后都不会有水印标识(原文档上传前个别存留的除外),下载后原文更清晰;试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓;PPT和DOC文档可被视为“模板”,允许上传人保留章节、目录结构的情况下删减部份的内容;PDF文档不管是原文档转换或图片扫描而得,本站不作要求视为允许,下载前自行私信或留言给上传者【丰****】。
5、本文档所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用;网站提供的党政主题相关内容(国旗、国徽、党徽--等)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
6、文档遇到问题,请及时私信或留言给本站上传会员【丰****】,需本站解决可联系【 微信客服】、【 QQ客服】,若有其他问题请点击或扫码反馈【 服务填表】;文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“【 版权申诉】”(推荐),意见反馈和侵权处理邮箱:1219186828@qq.com;也可以拔打客服电话:4008-655-100;投诉/维权电话:4009-655-100。
关于本文