网站大量收购独家精品文档,联系QQ:2885784924

试验报告:040462栾西-同济大学.DOC

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

实验名称: ___ ____ ___ __实验十三、_地铁售票机_ 姓名:___栾西_____ 学号:__040462__ 实验日期:_2007.5.30_ 一、实验目的 掌握VHDL语言的适用。 掌握各种简单功能模块的设计. 通过各种简单功能模块的集合,自己构造一个简单的实用性综合系统. 二、设计功能要求 地铁自动式售票机有3元和2元两种票,只能投入5角和1元两种硬币。投入硬币时显示屏幕上显示当先投入的钱数。 当投入的钱数等于所选票价时,自动给出车票(在试验中用发光二极管表示)。 如果钱数超过了所选票价,则退还所有钱(显示屏清零,退还硬币的提示用发光二极管表示)。 如果按“取消”,则同样退还所有钱。 三、工作原理 用money信号表示所选票价,用node1和node2分别表示投入1元和5角,dis1,dis2,cancel三个发光二极管分别表示执行给出3元票、2元票和退还硬币三种不同的操作;实验中,en接sw1开关,money接sw2开关,node1接sw3开关,node2接sw4开关,clr接sw5开关;在yuan模块中,当node1按下时,输出元数自动加1送入add相加模块;在jiao模块中,当node2按下时,若已经按下奇数次,则输出角数为5,偶数次则为0.并且每次按下偶数次时,另一个cout输出加1,相当于两个5角为1元。将这两个输出信号同时送入add相加模块;在add相加模块中,输出信号y1为yuan模块输入和jiao模块进位输入之和,y2为角模块的角数(为5或为0);若clr信号为1,表示按了取消键,cancel置1,与其相连的发光二极管亮,表示退还所有硬币;若clr为0,判断money的值,若为1表示选取3元的票,此时若y1为3,y2为0,则dis1置1,表示给出3元车票,同时y1和y2置零;若y1为3,y2为5,则cancel置1,表示金额超出,退还硬币;若上一步money值为0,表示选取2元的票,此时若y1为2,y2为0,则dis2置1,表示给出2元车票,同时y1和y2置零;若y1为2,y2为5,则cancel置1,表示金额超出,退还硬币;将dis1、dis2、cancel信号与输入clr信号共同通过一个“或”门,连接到yuan和jiao模块的清零段,表示无论哪个发光二极管亮,或者人为清零,两个模块计数全部清零。两计数模块清零后,add模块的y1和y2也变为0,则显示屏上显示“0“;在add模块中输出的y1和y2,结果扫描电路、2选1电路和共阴极七段译码电路输出到显示屏上。 四、设计原理图 设计原理图如下: Node1表示投入1元,node2表示投入5角,当node1按下,yuan模块输出信号yuan1加1,node2按下,jiao模块输出信号jiao1交替变为5和0,每次jiao1变为0时输出信号cout加1。两个模块输出的三个信号进入add模块,计算所得的钱数若正好等于通过money输入信号设定的钱数(1表示3元,0表示2元),则相应输出端口置1(money为1时为dis1,money为0时为dis2),dis1和dis2分别连接一个发光二极管。当输入add的各信号结算结果超过设定钱数,输出信号cancel置1,控制一个发光二极管。当dis1,dis2和money,或者输入clr信号其中一个为1,则将yuan和jiao模块输出置0,即将4个信号通过or4ge模块控制。Add模块输出信号y1和y2表示当前状态的元数和角数,并经过扫描电路用于显示。 四、各部分原理及功能说明 1、元计数电路(yuan) 源程序如下: entity yuan is Port ( en : in std_logic; clr : in std_logic; node1 : in std_logic; yuan1 : inout std_logic_vector(2 downto 0)); end yuan; architecture Behavioral of yuan is begin process(en,clr,node1) begin if en=1 then if clr=1 then yuan1=000; elsif node1 event and node1=1 then yuan1=yuan1+001; end if; end if; end process; end Behavioral; 功能说明: Node1按下时输出加1,表示元数加1,送入add模块 波形仿真: 2、角计数电路(jiao) 源程序(以10000分频为例): entity jiao is Por

文档评论(0)

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

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

1亿VIP精品文档

相关文档