游戏电路模拟
数字电子技术课程设计是数字电子技术基础课程的实践教学环节。是将理论与实用的电子基础知识相结合,验证、巩固、消化电子技术基础知识,综合应用数字电子技术解决生产一线的实际问题,提高基本的专业动手能力,进一步培养分析问题、解决问题的能力,将来更好地服务于社会。
设计的主要内容和要求:
1.设计一个模拟拔河游戏的逻辑电路。
2.电路采用15发光二极管,启动后只有拔河绳中间的发光二极管亮。
3.比赛双方各持一个按钮,快速连续按下按钮产生脉冲。谁快速按下按钮,LED就向谁的方向移动,每按一次,LED就移动一个位置。
4.当明亮的LED移动到任一侧的终点时,该侧获胜。之后两边的按键应该都没有效果,保持状态。只有当裁判按下复位按钮时,拔河绳中间的LED才再次亮起。
5.用七段数码管显示双方获胜的套数。
二,实验设计思路
基本要求如下:
(1)比赛开始时,双方只有在裁判下令后才能输入信号,否则输入信号会因电路的自锁功能而无效。
(2)“电子绳”至少由15个LED灯管组成。裁判下达“开始比赛”的命令后,位于“电子绳”中点的LED灯亮。甲乙双方通过按键输入信号,使点亮的LED灯管向己方移动,防止其延伸到对方。当从中间点到自己终点的所有LED灯管都亮了,就说明游戏结束了。此时电路会自行锁定,保持当前状态不变,除非裁判重置电路。
三、总体设计方案:
3.1,电路设计原理
拔河游戏机需要15(或9)个发光二极管排成一排,打开后只有中间的一个亮,这是拔河的中心线。游戏双方各持一键,快速连续按下,产生脉冲。谁按的快,亮点就往哪个方向移动,每按一次,亮点就移动一次。当移动到任一侧的终端二极管亮起时,这一侧获胜。此时两个按钮都没有作用,输出维持。复位后亮点才能恢复到中线。
监视器显示获胜磁盘的数量。
实验电路如下:
原则:
可逆计数器74LS193在原始状态下输出一个4位二进制数0000,解码器的输出点亮中间一个电平指示器。按下A、B两个按钮,分别产生两个脉冲信号,整形后分别加到可逆计数器上。可逆计数器输出的代码经解码器解码后,驱动电平指示灯点亮并移动。当亮点移动到任一端时,由于控制电路的作用,该状态被锁定,但对输入脉冲没有影响。如果按下重置按钮,亮点将回到中点位置,游戏可以重新开始。
将双方终端指示灯的正端分别通过两个与非门连接到两个十进制计数器CC4518的使能端EN。当任何一方获胜时,另一方的终端指示灯亮起,产生1个下降沿使其对应的计数器计数。通过这种方式,计数器的输出显示了获胜者赢得的盘的数量。
1.编码电路
编码器有两个输入,四个输出,需要进行加减计数,所以选用74LS193双时钟二进制同步加减计数器来完成。
2.整形电路
74LS193是一个可逆计数器,分别控制引脚5和引脚4的CP脉冲的加减。此时电路需要加法计数时,减法输入CPD必须接高电平;用减法计数时,加法输入端的CPU也必须连接到高电平。如果把A键和B键产生的脉冲直接加到5脚或4脚,会有很多情况是对方计数输入处于低电平,导致计数器无法计数,两个键都失效,拔河比赛无法正常进行。通过增加一个整形电路,可以将来自A键和B键的脉冲经过整形后转换成占空比较大的脉冲,从而降低计数时另一个计数输入为低的可能性,使得每次按键都可以有效计数。整形电路由与门74LS08和与非门74LS00组成。
3.解码电路:
它由4线-16线解码器CC4514组成。从译码器的输出Y0 ~ Y15中选择15个电平指示器,电平指示器的负端接地,正端接译码器;这样,当输出为高电平时,电平指示器就会亮起。
准备游戏,解码器的输入是0000,Y0的输出是1。中间的指示灯首先亮起。编码器向上计数时,亮点向右移动,向下计数时,亮点向左移动。
4.控制电路:
为了显示谁赢谁输,需要一个控制电路。当高亮移动到任何一方的终端时,该方被判定为胜者,此时双方的按钮被宣告无效。该电路可由或非门74LS02构成。将两端的指示灯连接到NOR门的两个输入端。当胜者为“1”,另一个为“0”时,或非门的输出为“0”,然后送到74LS193计数器的设置端,于是计数器停止计数,处于预置状态。因为计数器数据端子D0、D1和D1,
5.结果显示:
两端指示灯的正端经与非门输出后分别接两个CC4518计数器的CP端,将CC4518的两组4位BCD码分别接实验箱内两组解码显示器的8、4、2、1插孔。当一方获胜时,另一方的终端指示灯亮起,产生上升沿,使相应的计数器计数1,从而得到双方获胜次数的显示。如果一位数不够,就级联两位数。
重置
为了进行多次复位操作,使亮点回到中心点,可以用开关控制74LS193的复位端子R。
输赢指示器的复位也是用一个开关控制输赢计数器CC4518的清零端R使其重新计数。
CC4518菜单如下表所示,引脚排列见附录。
投入产出函数
时钟
CP清除
RD启用
(构成动词)表示“使处于…状态”
× 1 ×全零
= 0 1加计数
0 0 ↓
↓ 0 ×保持
× 0 ↑
↑ 0 0
1 0 ↓