乒乓球比赛游戏机源代码

1.基本要求
用8个LED发光管(4个红,4个绿)的来回滚动显示来模拟打乒乓球时乒乓球在两边球台上的来回运动。比赛双方用按按钮(双方各用1个按钮)的方法来模拟发球与接球,即发球方按动其控制的按钮,球从发球方一侧向对方运动(LED发光管从发球方到对方逐个点亮,滚动显示),当球运动至接球方时,接球方立即按动其控制的按钮,“击球”使球“弹回”发球方一侧,如此周而复始,直至在规定的击球时间内有一方未能完成击球动作,从而对方得一分,然后继续比赛。比赛规则可参照一般的乒乓球比赛规则。要求:
(1)球以每0.5秒滚过1个LED的速度移动;
(2)回球需在球到达后的0.5秒内进行(按下按钮),否则按失球计;
(3)球未到达提前按下按钮不起回球作用;
(4)用4个八段码为双方记分(每方2个八段码,10进制计数,初始值0:0)
2.设计提示
球到达接球方后,立即读接球方的按钮状态,若未按则有效(若已按下则无效),然后不断读此按钮状态,直到按下代表“击球”动作。
(1)通过拨动开关改变球移动速度,即每个LED管点亮时间分别为0.5秒、0.3秒、0.2秒;
(2)通过拨动开关改变允许击球时间0.3秒、0.2秒、0.1秒;
(3)球移动速度取决于击球时间,即球移动速度(每个LED点亮时间)在0.2~0.5秒内可变,具体取决于球到达接球方后击球所花的时间0~0.5秒,如花的时间短则回球后球移动速度快,反之回球后移动速度慢,如下表所示。
球到达至击球时间 0~0.2秒 0.2~0.3秒 0.3~0.4秒 0.4~0.5秒
球移动速度(灯点亮时间) 0.2秒 0.3秒 0.4秒 0.5秒

第一章 设计任务书
一、设计题目:乒乓球比赛游戏机
二、设计要求:
1. 设计一个甲、乙双方参赛,裁判参与的乒乓球比赛游戏模拟机。
2. 用8个发光二极管排成一条直线,以中点为界,两边各代表参赛双方的位置,其中点亮的发光二极管代表“乒乓球”的当前位置,点亮的发光二极管依次由左向右或由右向左移动。
3. 当球运动到某方的最后一位时,参赛者应立即按下自己一方的按钮,即表示击球,若击中,则“球”向相反方向运动,若未击中,则对方得1分。
4. 设置自动计分电路,双方各用二位数码管来显示计分,每局10分。到达10分时产生报警信号。

第二章 电路组成和工作原理

一.分析系统的逻辑功能,画出其框图如下:

计分电路
球台电路

L

CP

S

KA,KB
CNT

图1乒乓球比赛游戏机的原理框图

如上图1所示,该电路主要由球台驱动电路,控制电路,计数器,显示译码器和LED数码管等组成。途中标出的各种信号的含义:CP表示球台驱动电路和计数器的时钟信号;S表示灯(乒乓球)移动的信号;L表示发光二极管驱动信号,由L1~L8组成;CNT表示计数器的计数脉冲信号,由CNT1,CNT2组成;KA,KB表示开关控制的外输入发球、击球信号。
二、总体思路描述如下:
1.用两个74LS194四位双向移位寄存器模拟乒乓球台,其中第一个74LS194的DL输出端接第二个的右移串行输入端,这样当乒乓球往右准备移出第一个寄存器的时候就会在时钟脉冲的作用下被移入第二个寄存器。同样道理,第二个74LS194的AR输出端接第一个的左移串行输入端。
2.用D触发器及逻辑门电路构成驱动控制电路
3.用计数器、逻辑门电路和集成的4管脚的数码管组成计分电路

第三章 设计步骤及方法
一、单元电路的设计
1.球台电路如下图2设计所示:

图2.球台电路
上图中,两片4位74LS194双向移位寄存器接成8位双向移位寄存器。74LS194功能表如下
D
S1 S0 工作状态
0
1
1
1
1 × ×
0 0
0 1
1 0
1 1 置零
保持
右移
左移
并行输入
功能说明:
(1)当S1 = S0 =1 时,不管各输入端原来是什么状态,在下一个时脉冲到来时,其输出分别是预先输入到并行输入端的 abcd ,这种方式叫送数。

(2)当 S 1 =0 ,S 0 =1 时,其工作方式叫右移,这时,每来一个时钟脉冲,输出端的数各向右移一位,而 Q A 端的输出则由加到 R 端的数来补充。
(3)当 S 1 =1 ,S 0 =0 时,其工作方式叫左移,情况正好与右移相反; Q D 端的输出由加到 L 端的数来补充。
(4)当 S 1 = S 0 =0 时,不管是否有 CP 脉冲作用,输出保持不变,这叫保持方式。 CP=0 时也是保持方式。
2.驱动控制电路设计如下图3所示

图3.驱动控制电路
图中74LS74为上升沿触发的D触发器,~PR为置1端(低有效),~CLR为置0端(低有效)。当J1=0时,两片D触发器输出端均为1即S1=S0=1,通过接入74LS194,此时实现的是并行输入功能。当J1=1时,L1=J2=1,J3=L8=0,通过各门电路可知U2A,U4A,U2B输出端分别为0,1,1,则D触发器输出端分别为0,1即S1=0,S0=1。相反情况时,当J1=1时,L1=J2=0,J3=L8=1,D触发器输出端分别为1,0即S1=1,S0=0。通过此电路来控制并且实现球台灯的左右移位即实现乒乓球的运动。

3.计分电路的设计如下图4所示:

图4.计分电路
如上图所示,计分电路由一个7404非门,7409与门和十进制的74LS160计数器构成。得分真值表如下
由上表可得上图中非门和与门的接法。
L1 J2(A) L8 J3 Y(A) Y(B)
1 0 0 0 0 1
0 0 1 0 1 0
同步十进制计数器74LS160的功能表如下:

D

EP ET 工作状态
×

×
×

0
1
1
1
1 ×
0
1
1
1 × ×
× ×
0 1
× 0
1 1 置零
预置数
保持
保持(但C=0)
计数
由74LS160的功能表可知,当~RD=~LD=EP=ET=1时工作状态为计数,即图4中的~CLR=~LOAD=ENT=
ENP=1时。选用ENP、ENT作为74LS160的计数控制端,当ENT=ENP=1时计数,当ENT=ENP=0时计分电路处于保持状态。RCO为进位输出端,即当选手计满9分时给出报警信号。

二、总体电路的设计及仿真结果。
总体设计电路图如下图所示:

仿真结果图如下:

用Multisim封装后的结果如下图所示:

绘制的PCB图

课程设计收获
通过此次课程设计,我们了解了模拟电路基本设计方法,对Multisim仿真软件有了初步的了解和认识,使用Multisim仿真软件,可以让我们在虚拟的环境中进行实验,不需要真实电路环境的介入,不必顾及仪器设备的短缺与时间环境的限制,能够极大的提高实验的效率。
这次数电课程设计,虽然短暂但是让我得到多方面的提高:1、提高了我们的逻辑思维能力,使我们在逻辑电路的分析与设计上有了很大的进步。加深了我们对组合逻辑电路与时序逻辑电路的认识,进一步增进了对一些常见逻辑器件的了解。另外,我们还更加充分的认识到,数字电路这门课程在科学发展中的至关重要性2,查阅参考书的独立思考的能力以及培养非常重要,我们在设计电路时,遇到很多不理解的东西,有的我们通过查阅参考书弄明白,有的通过网络查到,但由于时间和资料有限我们更多的还是独立思考。3,相互讨论共同研究也是很重要的,经常出现一些问题,比如电路设计中的控制器的设计,以及乒乓球游戏机怎样计分等的分析。还使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。

学生:

年 月 日

提供邮箱吧 图看不到 给你发文档

如果对您有帮助,请记得采纳为满意答案,谢谢!祝您生活愉快!
温馨提示:内容为网友见解,仅供参考
第1个回答  2010-09-17
第一章 设计任务书
一、设计题目:乒乓球比赛游戏机
二、设计要求:
1. 设计一个甲、乙双方参赛,裁判参与的乒乓球比赛游戏模拟机。
2. 用8个发光二极管排成一条直线,以中点为界,两边各代表参赛双方的位置,其中点亮的发光二极管代表“乒乓球”的当前位置,点亮的发光二极管依次由左向右或由右向左移动。
3. 当球运动到某方的最后一位时,参赛者应立即按下自己一方的按钮,即表示击球,若击中,则“球”向相反方向运动,若未击中,则对方得1分。
4. 设置自动计分电路,双方各用二位数码管来显示计分,每局10分。到达10分时产生报警信号。

第二章 电路组成和工作原理

一.分析系统的逻辑功能,画出其框图如下:

计分电路
球台电路

L

CP

S

KA,KB
CNT

图1乒乓球比赛游戏机的原理框图

如上图1所示,该电路主要由球台驱动电路,控制电路,计数器,显示译码器和LED数码管等组成。途中标出的各种信号的含义:CP表示球台驱动电路和计数器的时钟信号;S表示灯(乒乓球)移动的信号;L表示发光二极管驱动信号,由L1~L8组成;CNT表示计数器的计数脉冲信号,由CNT1,CNT2组成;KA,KB表示开关控制的外输入发球、击球信号。
二、总体思路描述如下:
1.用两个74LS194四位双向移位寄存器模拟乒乓球台,其中第一个74LS194的DL输出端接第二个的右移串行输入端,这样当乒乓球往右准备移出第一个寄存器的时候就会在时钟脉冲的作用下被移入第二个寄存器。同样道理,第二个74LS194的AR输出端接第一个的左移串行输入端。
2.用D触发器及逻辑门电路构成驱动控制电路
3.用计数器、逻辑门电路和集成的4管脚的数码管组成计分电路

第三章 设计步骤及方法
一、单元电路的设计
1.球台电路如下图2设计所示:

图2.球台电路
上图中,两片4位74LS194双向移位寄存器接成8位双向移位寄存器。74LS194功能表如下
D
S1 S0 工作状态
0
1
1
1
1 × ×
0 0
0 1
1 0
1 1 置零
保持
右移
左移
并行输入
功能说明:
(1)当S1 = S0 =1 时,不管各输入端原来是什么状态,在下一个时脉冲到来时,其输出分别是预先输入到并行输入端的 abcd ,这种方式叫送数。

(2)当 S 1 =0 ,S 0 =1 时,其工作方式叫右移,这时,每来一个时钟脉冲,输出端的数各向右移一位,而 Q A 端的输出则由加到 R 端的数来补充。
(3)当 S 1 =1 ,S 0 =0 时,其工作方式叫左移,情况正好与右移相反; Q D 端的输出由加到 L 端的数来补充。
(4)当 S 1 = S 0 =0 时,不管是否有 CP 脉冲作用,输出保持不变,这叫保持方式。 CP=0 时也是保持方式。
2.驱动控制电路设计如下图3所示

图3.驱动控制电路
图中74LS74为上升沿触发的D触发器,~PR为置1端(低有效),~CLR为置0端(低有效)。当J1=0时,两片D触发器输出端均为1即S1=S0=1,通过接入74LS194,此时实现的是并行输入功能。当J1=1时,L1=J2=1,J3=L8=0,通过各门电路可知U2A,U4A,U2B输出端分别为0,1,1,则D触发器输出端分别为0,1即S1=0,S0=1。相反情况时,当J1=1时,L1=J2=0,J3=L8=1,D触发器输出端分别为1,0即S1=1,S0=0。通过此电路来控制并且实现球台灯的左右移位即实现乒乓球的运动。

3.计分电路的设计如下图4所示:

图4.计分电路
如上图所示,计分电路由一个7404非门,7409与门和十进制的74LS160计数器构成。得分真值表如下
由上表可得上图中非门和与门的接法。
L1 J2(A) L8 J3 Y(A) Y(B)
1 0 0 0 0 1
0 0 1 0 1 0
同步十进制计数器74LS160的功能表如下:
D
EP ET 工作状态
×

×
×

0
1
1
1
1 ×
0
1
1
1 × ×
× ×
0 1
× 0
1 1 置零
预置数
保持
保持(但C=0)
计数
由74LS160的功能表可知,当~RD=~LD=EP=ET=1时工作状态为计数,即图4中的~CLR=~LOAD=ENT=
ENP=1时。选用ENP、ENT作为74LS160的计数控制端,当ENT=ENP=1时计数,当ENT=ENP=0时计分电路处于保持状态。RCO为进位输出端,即当选手计满9分时给出报警信号。
二、总体电路的设计及仿真结果。
总体设计电路图如下图所示:
仿真结果图如下:
用Multisim封装后的结果如下图所示:
绘制的PCB图
课程设计收获
通过此次课程设计,我们了解了模拟电路基本设计方法,对Multisim仿真软件有了初步的了解和认识,使用Multisim仿真软件,可以让我们在虚拟的环境中进行实验,不需要真实电路环境的介入,不必顾及仪器设备的短缺与时间环境的限制,能够极大的提高实验的效率。
这次数电课程设计,虽然短暂但是让我得到多方面的提高:1、提高了我们的逻辑思维能力,使我们在逻辑电路的分析与设计上有了很大的进步。加深了我们对组合逻辑电路与时序逻辑电路的认识,进一步增进了对一些常见逻辑器件的了解。另外,我们还更加充分的认识到,数字电路这门课程在科学发展中的至关重要性2,查阅参考书的独立思考的能力以及培养非常重要,我们在设计电路时,遇到很多不理解的东西,有的我们通过查阅参考书弄明白,有的通过网络查到,但由于时间和资料有限我们更多的还是独立思考。3,相互讨论共同研究也是很重要的,经常出现一些问题,比如电路设计中的控制器的设计,以及乒乓球游戏机怎样计分等的分析。还使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌握得不够牢固。
希望能帮助您本回答被网友采纳

求助大侠,微机原理实训 乒乓球比赛游戏机 汇编编写 最好有PCB图,用的...
0x7f,0x6f,0x77,0x7c,0x39,0x5e,0x7b,0x71。二、 硬件接线图 三、 程序框图 四、 源程序 程序源代码如下:(含注解)\/\/--- \/\/ File Name: table tennis.cpp \/\/ Version: 1.0标准版 \/\/ Created By: 枫飞 \/\/ Created date: 01\/12\/2010 \/\/ Description: ...

乒乓球比赛游戏机: 设计一个甲、乙双方参赛,裁判参与的乒乓球比赛游戏模...
说实话,做打乒乓球这样的软件很难做,变化多,我玩过好多乒乓球的软件 ,很差劲,首先你要做软件,你要会打,乒乓球有旋转,落点。力量,节奏,的变化,每一个变化,都会有很大差异的效果,技术方面,有打球,打高球,挑球,前冲弧圈球,高调弧圈球,反拉,削球,放高球,推挡,横打,撇,等等,每...

乒乓球比赛游戏机的设计原理图
2�6�1 搭接乒乓球游戏机的发球及移位控制部分,检查它是否能实现:①清零后,甲(乙)发球及球向乙(甲)方移动。②乙(甲)未击球时,球继续按原来方向移动。③击球后,如果球已到最后位置,则改变原来的移位方向,若球未到最后位置,则位移方向不变。3�6�...

什么是FPGA里面的乒乓机制?
数据处理流程: 数据接收->数据处理->数据发送 乒乓机制就是有套块数据接收路径,一块数据接收时,算法处理另一块数据,而不用等待当前数据接收完后再处理,作用是提高数据吞吐量。

求一份关于FPGA游戏机设计(最好是乒乓球)的英文文献!好的话!会追加财富...
仿真结果表明,该乒乓球游戏机工作正常,具有发球权控制、自动计分、犯规提示等多种功能,能有效模拟实际乒乓球比赛。【作者单位】: 上海海洋大学工程学院;【关键词】: 乒乓球比赛游戏机FPGAVHDL状态机 【分类号】:TS958.83 【正文快照】:可编程逻辑器件FPGA以其开发周期短、成本低、功耗低、可靠性高等...

乒乓球游戏机用ewb来做球高手指点,要求如下
若发亮的LED运动到对方的终点,但对方未能及时输入信号使其向相反方向移动,及失去1分。

...两人乒乓游戏机能够模拟乒乓球比赛的基本过程和规则,并能自动裁判...
两人乒乓游戏机能够模拟乒乓球比赛的基本过程和规则,并能自动裁判和计分。乒乓游戏机是用8个发光二极管代表乒乓球台,中间两个发光二极管兼做乒乓球网,用点亮的发光二极管按一定的方向移动来表示球的运动。在电路中设置四个输入端:两个是发球开关,两个是击球开关(分别归甲乙两人所有)。

急求数字电子课程设计乒乓球比赛游戏机总结 收获 体会~~
3,相互讨论共同研究也是很重要的,经常出现一些问题,比如电路设计中的控制器的设计,以及乒乓球游戏机怎样计分等的分析。还使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和...

乒乓球怎么拉加速球?
前加速就是在击中球以前的加速. 加速的力量主要来自蹬腿转腰, 部分来的挥动大臂, 尽量以最高的速度击中来球.后加速 后加速就是在击中球以后的加速. 无论你挥拍速度有多高, 拍在击中乒乓球后便减了速, 拍越轻, 减速越厉害, 所以, 假如你的拍很轻, 虽然挥拍速度是提高了, 可是, 打出来的球...

快乐乒乓球游戏机怎么玩
5. 游戏界面:在游戏界面中,可以按下1号键、3号键和4号键来切换视角。6. 续关界面:游戏失败后,会进入续关界面。7. 乒乓球的历史:1. 乒乓球运动于十九世纪末起源于英国,最初只是一种活动性游戏。球是用轻而富有弹性的材料制成,拍子则是用木质板制成,类似于打网球的方式在桌上进行,因此...

相似回答
大家正在搜