《自动售票机、累加器电路图(共12页).doc》由会员分享,可在线阅读,更多相关《自动售票机、累加器电路图(共12页).doc(12页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、精选优质文档-倾情为你奉上实验报告一、 设计方案 1.设计选题A:累加器 (1)个位数字的加法逻辑电路: 图1.1 各位加法电路及其模块 (2)十位及报警逻辑电路电路: 图1.2 十位及报警电路及其模块 (3)500Hz分频电路:图1.3 500Hz分频电路及其模块 (4)消抖电路: 图1.4 消抖电路及其模块 (5) 数码管显示电路:图1.5 数码管显示电路及其模块 (6) 累加器逻辑电路总图、下载电路及管脚分配电路:图1.6 累加器电路总图 2.设计选题C:自动售票机 (1)500Hz分频电路及其模块如图1.3所示。 (2)消抖电路及其模块如图1.4所示。 (3)钱币的输入及邮票的设置电路
2、: 图2.1 数据输入电路及其模块 (4)数据比较电路: 图2.2 数据比较电路及其模块 (5)减法找零电路: 图2.3 减法找零电路及其模块 (6)累加器电路: 图2.4 累加器电路及其模块其中,累加器电路中用到的“leijia”模块和“SHIWEI”模块均来自于设计选题A:累加器。 (7)3s计数器电路: 图2.5 3s计数器电路及其模块 (8)数码管显示电路: 图2.6 数码管显示电路及其模块 (9)彩灯显示电路: 图2.7 彩灯显示电路及其模块 (10)自动售票机逻辑电路总图、下载电路及管脚分配电路图2.7 自动售票机电路总图二、 实验数据及结论 1.设计选题A:累加器 (1)仿真波形
3、 CLK为时钟信号,CLRN为异步清零端,A1/A2/A3/A4为四位BCD码输入,QD/QC/QB/QA为低四位累加结果,C为进位输出,ENP为使能端。 从仿真波形可以看出当CLRN和ENP都为高电平时,累加器正常工作,行使累加的功能;当ENP为低电平时,输出处于保持状态,当ENP回到高电平时,输出继续累加;当CLRN为低电平时,输出清零,当CLRN回到高电平时,输出从新开始累加。图2.11 个位加法电路波形仿真 CLK为信号输入端,CLRN为异步清零端,ENP为使能端,QD/QC/QB/QA为累加结果的高四位输出,BAOJING为累加溢出时的报警信号。 从波形仿真可以看出,当ENP为低电平
4、时,输出保持;当CLRN为低电平时,输出信号都清零;当ENP和CLRN都为高电平时,电路正常工作。当高四位计数溢出后会发出报警信号。图2.12 十位及报警电路波形仿真 CLK为数码管的扫描时钟信号,1A/2A/3A/4A为低四位累加结果,1B/2B/3B/4B为高四位累加结果,低四位选通数码管LED1,高四位选通数码管LED2,a/b/c/d/e/f/g为数码管的七段二极管。图2.13 数码管显示电路波形仿真 (2)硬件测试情况表1 累加器硬件测试情况ENP使能端CLRN清零端S38S24S12S01LED1高位LED2低位BAOJING(0表示不报警,1表示报警)11000101011001
5、0030110100070111000150111111300011111300011111300111111450111111600111111750111111900111111001101111000111111150 (3)实验结论由实验可知,累加器为BCD码输入,数码管可正常显示累加结果,当使能端为高电平时,累加器工作,当使能端为低电平时,累加器输出保持;当清零端为高电平时,累加器工作,当清零端为低电平时,累加器显示为0;当清零端重新置1时,累加器从0开始正常累加;当累加结果超过99时,报警器开始报警,直到数据清零时,停止报警。并且由仿真波形和硬件测试表可知,累加器电路逻辑功能与题目
6、相符,说明累加器功能正确,设计符合要求。 2.设计选题C:自动售票机 (1)仿真波形 CLK为时钟信号,IN为输入按键抖动,OUT为消抖输出。图2.21 消抖电路的仿真波形 CLK为时钟信号,D3/D2/D1/D0为四位输入数据,Q3/Q2/Q1/Q0为四位输出数据,RESET为复位清零端。图2.22 数据输入电路仿真波形 A3/A2/A1/A0和B3/B2/B1/B0分别为两组待比较的数据,AGB表示A大于B,ALEB表示A等于或小于B。图2.23 数据比较电路仿真波形 shezhi3/shezhi2/shezhi1/shezhi0表示售票机设置的邮票面值,shuru3/shuru2/shu
7、ru1/ shuru0表示输入的钱币数,s3/s2/s1/s0表示输入钱币书减去邮票面值后找零的钱数。图2.24 减法找零电路仿真波形 CLK为时钟信号输入,CLRN1为异步清零端,1D/1C/1B/1A为低四位输出,2D/2C/2B/ 2A为高四位输出,YELLOW为累加器溢出信号。 当CLRN1为高电平时累加器正常工作,当为低电平时,所有输出都置零。当累加结果超过累加器所能计数的范围时,YELLOW变为高电平,直到复位才回到低电平。图2.25 累加器仿真波形 50m表示始终信号输入,C表示时钟信号输出,在AGB和RESET都为高电平的条件下,每输入3个时钟信号,就会产生一个低电平输出信号。
8、图2.26 3S计数器仿真波形 500m表示时钟信号输入;JIAN表示减法找零的数码管显示,选通LED8;LA表示累加结果的个位数字,选通LED1;LB表示累加结果的十位数字,选通LED2;SHEZHI表示设置的邮票面值,选通LED4;SHURU表示输入的钱币数,选通LED6。图2.27 数码管显示电路仿真波形 1JIAO/1YUAN/2JIAO/5JIAO表示输入的钱币数,分别用L1/L4/L2/L3列的绿灯显示,INY表示累加器溢出信号,用L1列的黄灯显示。当ALEB为高电平时正常显示,当ALEB为低电平时,所有灯都不亮。 图2.28 彩灯显示电路仿真波形 (2)硬件测试情况表2 自动售票
9、机硬件测试情况邮票面值/角LED4显示钱币面值/角LED6显示找零/角(LED8显示)累加结果彩灯亮灭情况报警(1表示启动报警,0表示未启动报警)十位(LED2显示)个位(LED1显示)1111001L1列绿05540210 9112211不显示都不亮155314L2列绿0108225511不显示都不亮155027L3列绿0105321011不显示都不亮15510042L4列绿01010 05 2L4列绿06272829202L1列黄 (3)实验结论由实验可知,该设计可以设置邮票面值、输入钱币并显示,可实现自动找零显示,报警,累加买钱额显示,及累加溢出指示。并且实验结果、硬件测试情况与真值表、
10、逻辑表达式及题目要求的功能基本相符,所以,设计基本符合要求。三、 实验总结与体会 1.实验中遇到的问题总结我是连续进了两次实验室才基本实现累加器和自动售票机的功能,所以,我就分两次来总结一下我在实验中遇到的问题。 (1)第一次出现的问题很多:首先对于累加器来说,清零复位键设计有错误,正常情况下,复位键作用时可使数码管显示为0,而实验时的现象是,复位键作用使数码管关闭,再让复位键不工作时,数码管显示关闭之前的数,也就是说复位键起的是开关的作用,输出保持不变。检查电路图发现,之前的复位键加在了数码管显示电路中,这并不能使累加的结果清零,所以呈现出开关的作用。而将复位键直接加在累加器电路中,就可以实
11、现复位了。对于自动售票机来说问题就更多了,并且主要都是显示电路的问题。一开始下载运行电路之后,数码管都不正常显示,究其原因是因为我用的是50MHz的时钟信号对数码管进行扫描,这个频率对于数码管来说太高了,所以我将扫描频率分频为500Hz后,数码管才正常工作。 (2)第二次:累加器还有一个问题就是,累加溢出报警信号只能保持到输入下一个数,经过电路修改之后,只要累加溢出,报警信号就一直作用,直到复位清零才停止。到第二次实验,累加器基本已经实现题目要求的功能,下面我主要说一下自动售票机的问题。第一次试验时,自动售票机实现的功能很少,主要就是显示不出来。当我回头检查电路时发现3S计数器时钟信号竟然经过
12、了两次50M:1的分频,这就使当输入钱数小于邮票面值时报警无法正常工作,当去掉一个分频之后报警正常显示。累加器在第一次实验时显示的是乱码,检查电路后发现显示电路输入的二进制数不是分成了个位和十位的BCD码,而是正常的二进制数,要解决这个问题必须要将累加后的结果个位和十位分开所以我将累加器部分引用设计选题A累加器的部分电路,从而实现功能。第一次实验时,彩灯显示电路也不正常工作,正常情况下,每次成功售票时都会有对应的彩灯亮起,而实验时无论售出哪个面值的邮票都只有一个绿灯亮。检查电路发现L1/L2/L3/ L4四列的彩灯选通出现问题,将电路修正之后可正常显示。除此之外,我还在题目的基础上加了一个累加
13、器溢出报警信号,当累加器溢出时,L1列的黄灯就会亮,直到复位才变灭。 (3)实验未达到题目要求的部分在自动售票机选题中,要求所有的数据输入都要用按键完成,而试验箱上的独立按键只有五个,我又没有学会使用矩阵键盘,所以我就用了3个拨码开关来代替按键作为钱币的输入设置。其次,在显示邮票面值和钱币数时,1、2、5可正常显示,而我只用了一位数码管,所以当显示10时,数码管会出现,用以代表1元。 2.实验体会我觉得这次综合实验是我收获最大的一次实验,从设计电路到一步步实现它的功能都是我自己运行修改的,虽然在第一次试验时做的很不成功,但是到最后能将题目要求的功能基本都实现,我还是很自豪的,这让我对数字电路的设计产生了浓厚的兴趣。记得第一次实验时老师很讶异于我用纯粹的电路图来搭建实现自动售票机的功能,我现在基本实现了功能,感到很开心,但是老师的话让我知道,要做好数字电路的设计电路图是很笨的方法,我还应该学一学Verilog语言编程,这样才能用更简单的方法实现更高端的功能。总之,通过这次试验我又学到了很多知识,同时也间接的复习了数字电路的内容,为我考前复习做了一些准备,我受益颇丰。专心-专注-专业
限制150内