数电设计乒乓球游戏机
- 格式:docx
- 大小:1.08 MB
- 文档页数:11
数字电路课程设计报告
设计二乒乓球游戏机
姓名:陈元
专业:信息工程
年级:2015
班级:信工二班
学号:20153201016
1. 设计题目及要求
1.1题目:乒乓球游戏机
1.2要求:
1)用8个发光二极管表示球;用两个按钮分别表示甲乙两个球员的球拍;
2)一方发球后,球以固定速度向另一方运动(发光二极管依次点亮),当球达到最后一个发光二极管时,对方击球(按下按钮)球将向相反方向运动,在其他时候击球视为犯规,给对方加1分;都犯规,各自加1分;
3)甲、乙各有一数码管计分;
4)裁判有一个按钮,是系统初始化,每次得分后,按下一次。
2. 设计过程及软件仿真
2.1设计方案:
1)球台电路:用8个发光二极管表示球,采用双向移位寄存器控制灯的流
向;
2)控制电路:用双D触发器及逻辑门电路组成,通过此电路控制球台电路
的左右移位;
3)计分电路:用十进制计数器,逻辑门,译码器,数码管组成;
4)时钟电路:用555定时器构建多谐振荡器产生时钟脉冲;
5)电源电路:用usb串口与5v移动电源向电路板供电,并在电路板设置电
源指示灯指示供电情况。
2.2.总电路设计:
2.3单元电路设计
1)球台电路设计
球台电路是整个乒乓球游戏机的终端,是最终打乒乓球的球台。
上图中,两片4位74LS194双向移位寄存器接成8位双向移位寄存器。
74LS194功能表如表1所示:
2)开关电路
开关电路是整个乒乓球游戏机的灵魂,是使乒乓球游戏能进行的核心。
开关电路由两片74ls74(D触发器)、两个与非门,两个与门和一个或门组成。
图中74LS74为上升沿触发的D触发器,~PR为置1端(低有效),~CLR为置0端(低有效)。
当J1=0时,两片D触发器输出端均为1即S1=S0=1,通过接入74LS194,此时实现的是并行输入功能。
当J1=1时,Qa=J3=1,J2=Qd=0,通过各门电路和D触发器输出端分别为0,1即S1=0,S0=1。
相反情况时,当J1=1时,Qa=J3=0,J2=Qd=1,D触发器输出端分别为1,0即S1=1,S0=0。
通过此电路来控制并且实现球台灯的左右移位即实现乒乓球的运动。
(图中J1、Qa和Qd 是按键信号,J3和J2代表第一个和第八个led的信号)
启动时,按下J1使两个D触发器输出1,对应的两个移位寄存器进入并行输入模式,然后通过按下Qa使最左边led点亮,再松开J1,使乒乓球开始流动,当最右边第一颗led点亮时此时按下Qd对应的按钮,使U4B的D输入端通过U6B与非的输出门置1,时钟端通过U8A与门和U9A或门置1,获得一个上升沿脉冲,使S0=1,S1保持为0,led向左移动,以此类推)。
补充:开关电路中74ls09为OC门,要实现与功能需加合适的上拉电阻。
3)数码管电路和计分电路
如下图所示,计分电路由一个7486异或门、十进制的74LS160计数器、74ls47bcd共阳数码管译码器和一位共阳数码管构成。
得分真值表如下表所示:
计分电路工作原理:IO1和开关电路中的Qa相连,IO3和J3相连(同理另一半电路),当led灯不在最左端(最右端)时,此时Qa=0,当按下J3时使得U30A异或门的两个输入端为1、0,输出为1,使74ls160计数器使能端有效,进入计数模式,驱动数码管开始计分。
正常情况下(led不到相应位置不按按钮)异或门的输入端都是0或都是1,计数器使能端无效,计数器不工作。
同步十进制计数器74LS160的功能表如下表三所示:
表3 74LS160的功能表
RCO为进位输出端,即当计满9分时给出报警信号。
74LS47真值表
4)时钟电路
时钟电路是整个乒乓球游戏机的驱动,是在打乒乓球时经历的时间。
时钟电路是由555定时器构建的多谐振荡器,根据T=C1(R9+2R10)ln2计算能产生1Hz的时钟脉冲,来驱动led的流动和计数器计数。
5)总电路测试
在Multisim仿真过程中,先按一下J1初始化寄存器,再按J2或J3开球(指示灯暗时按开关,直到灯移向下一位放开),球将会向另一方移动,当点亮的球移动到另一方的最后一位时,对方将开关按下,灯就会反向移动,反之,若行动迟缓或超前,表示未击中或违规,则对方得一分。
Altium Designer原理图
Pcb设计图
3.硬件仿真及制作改善
3.1硬件仿真
3.2成品制作改善
3.2.1成品制作
将总电路打印在热转印纸上进行然后通过热转印机转印至双面覆铜板进行刷版制作,经过腐蚀后打孔,焊接元件,测试。
4.设计心得
通过这次的数电课程设计,让我了解和认识了Multisim仿真软件和Altium Designer设计软件,通过使用Multisim仿真软件,可以让我们在虚拟的环境中进行实验,可以先通过它来检验电路的正确性和可行性,而不需要真实电路环境的介入,不必顾及仪器设备的短缺与时间环境的限制,能够极大的提高实验的效率。
在设计初始阶段,我就意识到设计的核心是如何让led反转流动,也就是如何让移位寄存器的S0S1反转,借鉴网上的一些方法,我对利用门电路进行电路控制有了更深刻的认识。
而在硬件制作里,借助Altium Designer设计软件,也极大的提高了我的自我电路设计能力和电路问题的检测能力,这是书本知识的现实延伸,进一步增进了对一些常见逻辑器件的了解。
另外,通过对硬件电路的焊接,我的动手能力有所加强,也使我对PCB设计产生了兴趣,为我指向了下一个学习的目标。
5.实际电路:
总体情况:
电源:黄色电源指示灯亮,电源通过usb串口正常供电。
时钟电路:用万用表测555输出端,发现示数在5v和0v间跳动周期为一秒,led 灯可以正常流动,速度一秒一颗灯,表明时钟模块能正常产生1HZ脉冲。
计分电路:淘宝商家寄错数码管种类使其不能显示正常数字,但显示正常计数模式下可周期循环,,用万用表测十进制输出端最低位发现示数在5v和0v间跳动周期为一秒,证明计分功能正常。
球台电路:最左led灯可正常亮,并正常流动,但流动到另一侧按下按钮不一定可以返回。
U2移位寄存器在通电时有时容易发热甚至损坏(在更换ic型号后该问题有所好转,但不同型号的ic混合使用时有时在第4、5颗灯的交接中不一定可以成功,后来在U1的sl口与地之间连一个1M的电阻解决此问题),说明移位寄存器的电路部分正常,可能按钮接触不良也可能与开关电路中门的输出有关。
开关电路:开关电路可以使led正常点亮流动,但折返时有时不成功,可能与794ls09选取有关,与门应选取不是oc门的74ls08(最初设计时忘在输出端加上拉电阻。
在仿真中09的输出电压只有1v,会影响后续电路的功能,后来外置了上拉电阻解决了此问题)。
总结:除了因使用共阴数码管使其不能正常显示数字(可以显示)外,一般情况下所有功能都能正常使用,有时候因接触或者其他原因不一定成功。
不足:本次设计除了时钟模块独立外其他模块都放置在一块板上,其实把所有模块都单独出来再用串口链接会更省时省力,甚至不用双面板。
在开关模块等中一个门电路就用了一块芯片,没有合并,实属资源浪费。
还有很多瑕疵不一一列举。
以后可以尝试自己刷板。
附录实验仪器及器件。