eda自动售邮票机_第1页
eda自动售邮票机_第2页
eda自动售邮票机_第3页
eda自动售邮票机_第4页
eda自动售邮票机_第5页
已阅读5页,还剩5页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 EDA课程设计报告书课题名称自动出售邮票机电路的设计姓 名 学 号 院 系 专 业 指导教师 一、 设计任务及要求: 1任务:设计自动邮票销售机电路。 2要求:在有一元和五角两种硬币的情况下能让自动销售机根据得到的钱数自动出售邮票,并且能自动找零。 指导教师签名: 年 月 日 二、指导教师评语:指导教师签名: 年 月 日 三、成绩验收盖章 年 月 日 自动出售邮票机电路的设计 1设计目的(1)设计自动出售邮票机电路使机器能自动出售邮票。(2)学会使用eda软件quartus设计电路。(3)学会撰写课程设计总结报告,培养严肃认真的工作作风和严谨的科学态度。2设计的主要内容和要求 用vhdl语言

2、设计一个自动售邮票机的逻辑电路。每次只允许投入一枚五角或一元的硬币,累计投入一元五角硬币给出一张邮票,如果投入二元硬币,则给出邮票的同时还应找回五角钱。3 整体设计方案3.1大体设计思路:(1)输入模块的设计:当投入的是五角的硬币时,输出的是 0 信号。当投入的是一元硬币的时候,输出的是 1 信号。(2)销售模块的设计:前两次输入的硬币总和超过一元五角时,则不需要考虑第三次输入了;如:10、01、11,11代表销售一枚邮票,还要找零五角。如果前两次只投入一元钱,即两枚五角硬币,则第三次输入的一定是五角硬币,故第三次投入五角硬币就售出一枚邮票,不用找零。3.2 主要端口说明:(1)输入识别模块端

3、口:第一次输入端口为m0,第二次输入端口为m1,第三次不加以识别,有硬币输入则售出一枚邮票。如 即端口c为高电平,则输出,反之则售出邮票。(2)销售机输入端口(即识别模块的输出端口):输入端口m1的输出端口为y1,输入端口m0的输出端口为y0,外加第三个输入端口c。(3)销售机输出端口:s为高电平代表有邮票输出;cout为代表需要找零五角。3.3 整体设计方框图: 整体设计方框图如下:输入硬币信号m1,m0,c为输入信号,售票信号s和找零信号cout为输出信号。图3.1 自动出售邮票机电路流程设计方框图4 硬件电路的设计4.1硬币识别模块的设计设计原理是:因为投入的硬币之有两种,一元的和五角的

4、,所以为了简化处理,当检测到五角的硬币的时候就输出 0 电平,其余的情况为高电平 1 。具体的vhdl编写程序如下:Input :library ieee;use ieee.std_logic_1164.all;entity input isport(m0:in std_logic_vector(3 downto 0) ;y0:out std_logic);end input;architecture one of input isbegin process(m0) beginif m0=0101then y0=0; -输入为5时输出为低电平else y0=1; -输入1元时输出为高电平(因为

5、只有两种硬币)end if; -采用选择语句简单地设计end process;end one;Input1: -判断方式一样,因为输入输出名称不同而library ieee; -再次设计use ieee.std_logic_1164.all;entity input1 isport(m1:in std_logic_vector(3 downto 0) ;y1:out std_logic);end input1;architecture one of input1 isbegin process(m1) beginif m1=0101then y1=0;else y1=1;end if;end

6、process;end one;4.2邮票销售模块的设计设计原理是:根据输入信号的不同判别是否售出邮票。具体vhdl编写程序如下:Seller:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity seller isport(y0,c,y1:in std_logic;s,cout:out std_logic);end seller;architecture one of seller issignal x: std_logic_vector(1 downto 0);begin x=y1&y

7、0;process(y1,y0,x,c)begin if x=00 then s=0;cout=0 ;-输入两张5角硬币if c=1 then s=1;cout=0; -判断第三次是否输入else s=0;cout=0;end if;elsif x=10 then s=1;cout=0;-输入一块五,售出邮票,不找零elsif x=01 then s=1;cout=0;elsif x=11 then s=1;cout=1;-输入两块,售出邮票,找零else null;end if;end process;end one;4.3自动出售邮票机电路的设计 本部分采用原理图文件设计,把邮票机电路总框

8、图整合在一起,完成自动出售邮票机的电路。具体设计原理图如下:stampseller2图4.1 自动出售邮票机电路原理图 m0,m1,c为输入信号,s和cout为输出信号。根据输入信号及输出信号的结果可以判别此次设计是否成功。5 系统仿真5.1对自动出售邮票机电路设计原理图的编译在quartus软件平台下对用vhdl语言编写的程序生成符号文件,再利用原件符号构成总体电路原理图,如图4.1所示。将原理图stampseller2(图4.1)与vhdl程序在同一个工程内生成,设置stampseller2为顶层实体,对其进行编译可得如下图结果:图5.1 自动出售邮票机电路原理图编译结果5.2对自动出售邮

9、票机电路设计原理图的仿真电路原理图编译成功以后,便需要对编译的文件进行仿真以验证设计的电路的功能是否正确,能否正常运行。具体步骤如下:(1) 新建一个波形图文件(.vwf);(2) 在编辑菜单设置网格时间和仿真截止时间;(3) 导入节点,对节点进行参数设置,保存波形图文件;最后对文件进行仿真(simulation),观察波形,验证设计是否正确。 仿真波形如下图所示:图5.2 自动出售邮票机电路原理图仿真结果(1)图5.3 自动出售邮票机电路原理图仿真结果(2) 图5.2 是原理图仿真波形的仿真输出,图5.3是被仿真输出覆盖后的波形输入文件,由仿真波形可知:当输入两个五角硬币后(m1和m0都是5

10、),机器会判断第三次的输入(即c是否输入为高电平),如果有高电平输入则有邮票出售,如果前两次的硬币总额已经达到票价,则不需要第三次输入便会自动出售邮票,并找零。故自动出售邮票机电路设计成功。6 使用说明 往自动出售邮票机里累积投入一元五角,则会售出一张邮票。如果投入两元,则售邮票机会自动找回五角零钱。7 设计总结 这个设计实现了一个简单的自动出售邮票机的功能,程序由硬件描述语言vhdl编写。程序中采用分块编写的方式,将一个本来复杂的体系用简单的逻辑表述出来。各个模块产生不同的信号,以这些信号为桥梁分别控制各个模块,这样做设计显得很流畅,每个部分都不是独立存在的。通过本次设计,让我们更进一步的了解到Quartus II 5.0 软件的使用以及它的编译,硬件调试,软件仿真。也让我们认识到在此次课程设计中所存在的问题;而通过不断的努力去解决这些问题.在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论