EDA课程设计—乒乓球游戏机

EDA课程设计—乒乓球游戏机
EDA课程设计—乒乓球游戏机

燕山大学

EDA课程设计报告书题目:乒乓球游戏机

姓名:

班级:

学号:

成绩:

一、设计题目及要求

1.设计题目:

乒乓球游戏机

2.要求:

(1)用8个发光二极管表示球;用两个按钮分别表示甲乙两个球员的球拍;

(2)一方发球后,球以固定速度向另一方运动(发光二极管依次点亮),当球达到最后一个发光二极管时,对方击球(按下按钮)球将向相反方向运动。过早或过晚击球视为犯规,系统自动给对手加1分;

(3)甲、乙各有两个数码管计分(11分制),每两球换发一次发球方;

(4)裁判有一个按钮,系统初始化和每次得分后按下一次,发球方的第一个LED 会被点亮。

二、设计过程及内容

1.总体设计

根据题目设计要求,该乒乓球游戏机主要分为六个模块进行设计,其分别为ping-pong模块、control模块、score模块、change模块、clk模块、scan模块。ping-pong模块实现了乒乓球的运动的功能;control模块实现了乒乓球的往返运动的功能;score模块实现了球员的计分的功能;change 模块实现了裁判按下按键后换发球方的功能;clk模块实现了产生有效脉冲和分频的功能;scan模块实现了扫描的功能。

总电路图如下:

总电路图的仿真图如下:

仿真说明:输出端l0~l7的高电平脉冲表示乒乓球的运动轨迹,两位球员a0和b0正常击球使得球在两位球员之间往返运动,此时计数器不产生加分。

2.模块设计

(1)ping-pong模块

灯的亮灭代表乒乓球运动的轨迹。输入端sl为高电平(sr为低电平)和sr为高电平

(sl为低电平)表示小球的左移和右移,sr、sl同时为高电平时表示甲(set为低电平)或乙(set为高电平)为发球方。clk接时钟信号表控制乒乓球移动速度的大小,频率越大移动越快。

该模块的仿真图如下:

仿真说明:当给输入端sl一个高电平脉冲时,乒乓球的左移,给输入端sr一个高电平脉冲时,乒乓球右移。给输入端set一个高电平脉冲使发球方的第一个LED灯点亮。

(2)control模块

该模块的功能由双D触发器7474和门电路实现。输入端A、B分别代表甲、乙两位球员,输入端J代表裁判。当输入端Q0为高电平时代表乒乓球到达甲处,甲按下按键给一个高电平脉冲,通过此模块使sr为高电平,sl为低电平,乒乓球向相反方向移动,过早或过晚击球不会通过与门产生高电平,乒乓球不会反向移动。当裁判按下按钮后,7474处于置数状态,发球方的第一个LED灯点亮。

该模块的仿真图如下:

仿真说明:当输出端Q7和输入端A同为高电平时,输出端sr为高电平,乒乓球右移;当输出端Q0和输入端B同为高电平时,输出端sl 为高电平,乒乓球右移。输入端J为高电平时,发球方的第一个LED灯点亮。

(3)score模块

该模块的功能由两片十进制计数器74160、D触发器和门电路实现。两片74160分别控制个位和十位的分数,实现十二进制计数(十一分制)的功能。当球员犯规时(AB和Q的状态在clk的上升沿不同,异或门输出高电平,计数器从而产生进位),自动给对手加1分,计分暂停,当裁判(j)按下之后继续计分(由右边的两个D触发器和或非门,反相器实现。计分之后产生的上升或下降沿使或非门输出低电平,计数器停止工作)。由于裁判按下按钮,AB和Q(发球方)的状态不一样,可能会计分,而左边的D触发器输出低电平,计数器不工作,只有AB按下后,D触发器输出高电平之后才能工作。

该模块的仿真图如下:

仿真说明:当任一球员犯规后,计数器给对手加一分,直到加满十一分,计数器跳变为零。

(4)change模块

该模块的功能由双D触发器7474和一个D触发器实现。7474功能相当于把时钟信号J四分频,再通过D触发器实现每两次换一次发球方的功能。

该模块的仿真图如下:

仿真说明:当裁判按下两次按钮时,换一次发球方。

(4)clk模块

该模块的功能由两片双D触发器7474和一个D触发器以及相应的门电路实现。当在一局比赛中球员多次按下按键也只有第一个上升沿有效(当对手或裁判按下返回原状态),从而产生脉冲。该电路也有防抖动功能,避免加分错误。D触发器将时钟信号二分频,使得乒乓球运动速度适中。

该模块的仿真图如下:

仿真说明:输出端clk0显示的是将时钟信号clk二分频的结果。输出端a、b显示的输入端a0,b0的有效脉冲。

(5)scan模块

扫描电路通过74161计数器,输出2~5的数码管的地址循环,并通过4个74151数据选择器进行选择,使输出结果在实验箱上的数码管显示,表示两位球员的比分。

三、设计结论

这次课程设计,使我们对原本在课堂上课本中学习的知识有了更加深刻更加全面的了解,也使我们学习了解了MAX+PULSSⅡ软件。此外,更加学会了将所学的知识用于实践中,真正用自己所学的知识来解决各种问

题,更加锻炼了自己动手能力。

从刚开始拿到题目的迷茫,然后在网上查找筛选有用的资料,再到逐步开始努力解决问题,再经过不断的增删细节和一系列的修正,最终使实验结果完全符合实验要求。

在这个过程中,我们也遇到了许多问题。例如如何解决计数器重复加分的问题,如何解决在一局比赛中只选取球员有效的脉冲的问题,如何解决裁判按下按键后换发球方的问题等等。除了在设计电路图方面遇到的问题,最后在实验箱操作时,由于有损坏的导线和实验箱接线柱,还有导线和实验箱接触不良等方面的问题,在我们坚持不懈地更换实验箱和导线、反复实验了多次之后,最后终于克服重重困难,达到实验要求。

从中我们学会了在碰到困难时要学会,耐心,思考,用自己的能力,尽力自己解决问题。在此衷心感谢各位老师的帮助和悉心教导,使我们学习到了更多的知识,探求到更多解决问题的办法。同样还感谢一起合作的同伴,正是因为大家的共同努力和坚持不懈的探索精神,才有了我们这次的成功!

此次课程设计让我们认识到高新技术的快速发展和应用,让我们看到了EDA技术功能的强大,也让我们认识到掌握他们的重要性,同时也看到了各自的差距与不足。只有今后坚持不懈地努力学习,拓宽知识面,才能更好的掌握新技术,才能适应社会的发展,为社会的发展做出贡献。

相关主题
相关文档
最新文档