基于单片机的乒乓球游戏系统设计

上传人:无*** 文档编号:41254777 上传时间:2021-11-19 格式:DOC 页数:13 大小:306KB
收藏 版权申诉 举报 下载
基于单片机的乒乓球游戏系统设计_第1页
第1页 / 共13页
基于单片机的乒乓球游戏系统设计_第2页
第2页 / 共13页
基于单片机的乒乓球游戏系统设计_第3页
第3页 / 共13页
资源描述:

《基于单片机的乒乓球游戏系统设计》由会员分享,可在线阅读,更多相关《基于单片机的乒乓球游戏系统设计(13页珍藏版)》请在装配图网上搜索。

1、基于单片机的乒乓球游戏系统的设计姓 名:学 号:专业班级: 院(系): 设计时间: 设计地点: 指导教师评语: 成绩: 签名: 年 月 日目录一、 题目要求二、 方案设计三、 硬件原理四、 软件设计五、 结论与体会 附:硬件原理图基于单片机的乒乓球游戏系统的设计一、题目要求以STC12C5410AD单片机为核心设计一款“乒乓球游戏机”。用8支连续排列的发光二极管,通过发光二极管的依次点亮代表乒乓球的运动。再用2个按键模拟左右2个球拍,键按下代表球拍击球。“左拍”按下可使发光二极管从左向右依次点亮,模拟乒乓球从左向右飞来;反之,“右拍”按下则可使发光二极管从右向左依次点亮,代表球从右向左运动。本

2、游戏供两人玩,以一方按键(发球)开始,这时乒乓球就向对方运动,接球方应在乒乓球到达终点之前击球。如果击球时机合适,则把球击回,否则就算失误,由对方重新发球。在游戏过程中用LED数码管显示双方比分。二、方案设计(1) 本游戏开始时球在左方甲手中,数码管显示双方最初比分00。(2)当甲方按下按键T1时,球开始往右边移动,此时8位LED灯从左至右逐次点亮。乒乓球移动速度是固定的,每0.5S左右的速度移动一位。 (3)若接球方乙提前或迟后按下按键T2击球,则判已失误,由甲得分,乒乓球停止运动(发光二极管熄灭),数码管显示得分。球重新回到甲手中,由甲方再次发球,游戏进入下一回合。(4)若接球方乙击球时机

3、合适,即在LED灯到达最右端之前按下按键T2,则把球击回,LED灯即刻以0.5S每位左右的速度从右向左依次移动,等待甲方接球。若甲方接球失误,则判乙方得分,乒乓球停止运动(LED灯灭),数码管显示得分。球回到乙方手中,由乙方发球,游戏继续,开始进入下一回合。(5)当甲乙中有一人得分为9后,游戏进入下一轮,得分较少方一端的LED灯亮,数码管重新显示00。此时发球权交给在上轮比赛中落后(得分较少)的一方,当其按下按键后下一轮游戏正式开始。三、硬件原理1.STC12C5410AD单片机的主电路a 复位电路 复位操作有两种基本形式:一种是上电复位,另一种是按键复位。按键复位具有上电复位功能外,若要复位

4、,只要按图中的RESET键,电源VCC经电阻R1、R2分压,在RESET端产生一个复位高电平。上电复位电路要求接通电源后,通过外部电容充电来实现单片机自动复位操作。上电瞬间RESET引脚获得高电平,随着电容的充电,RERST引脚的高电平将逐渐下降。RERST引脚的高电平只要能保持足够的时间(2个机器周期),单片机就可以进行复位操作。按键复位电路图如图3.1.a所示。 图3.1.a 复位电路b 振荡电路单片机内部有一个高增益、反相放大器,其输入端为芯片引脚XTAL1,其输出端为引脚XTAL2。通过这两个引脚在芯片外并接石英晶体振荡器和两只电容(电容一般取30Pf)这样就构成了一个稳定的自激振荡器

5、,振荡电路脉冲经过二分频后作为系统的时钟信号,再在二分频的基础上三分频产生ALE信号,此时得到的信号时机器周期信号。振荡电路如图3.1.b所示:图3.1.b 晶体振荡电路2. LED灯接口电路8个LED灯的阳极与电源相连,阴极通过限流电阻与单片机的P1口相连,当单片机的P1口为低电平时,相应LED灯就被点亮,而当为高电平时相应LED灯就表现为熄灭状态。其接口电路如图3.2所示 图3.2 LED灯接口电路3. LED数码管显示电路LED数码显示管的数据段通过限流电阻分别与单片机的P2口相接,位选段分别接NPN三极管的两个集电极,三极管的两个发射极共地,基极通过限流电阻分别与P3.2、P3.3相接

6、。其硬件电路如图3.3所示图3.3 LED数码管显示电路4. 按键设定电路独立式键盘:独立式键盘中,每个按键占用一根I/O口线,每个按键电路相对独立。I/O口通过按键与地相连,I/O口有上拉电阻,无键按下时,引脚端为高电平,有键按下时,引脚电平被拉低。I/O口内部有上拉电阻时,外部可不接上拉电阻。本设计中键盘接口电路如图3.4所示:图3.4 按键设定电路四、软件设计软件设计流程图大体为:开始初始化按键K1(甲发球)K2适时?NY显示甲得分K1适时?显示乙得分N按键K2(乙发球)Y乙得分为9?YN甲得分为9?YN软件设计原代码为:#include#define uchar unsigned ch

7、ar#define uint unsigned int#define led P1#define shuma P2sbit k1=P30;sbit k2=P31;sbit dig1=P32;sbit dig2=P33;uchar code table= 0x3f,0x06,0x5b,0x4f, 0x66,0x6d,0x7d,0x07, 0x7f,0x6f,0x77,0x7c, 0x39,0x5e,0x79,0x71 ;uchar flag1,flag2,pair1,pair2,score1,score2,wait;void delay(uint);void ledmove();void key

8、scan();void score();void showscore(); void delay(uint time)uint i,j; for(i=time;i0;i-) for(j=100;j0;j-);void main()A0: led=0x7f;score1=0;score2=0;flag1=0;flag2=0;dig1=1;dig2=1;shuma=table0;delay(2000);B0: while(1) keyscan(); ledmove();score();showscore();if(score1=9|score2=9) break; if(score2=9) sho

9、wscore(); delay(1000); goto A0;if(score1=9) showscore();delay(1000);led=0xfe; score1=0;score2=0;flag1=0;flag2=0;dig1=1;dig2=1;shuma=table0;delay(2000);goto B0;void ledmove()if(led=0x7f)&(pair1=1)flag1=1;flag2=0; if(flag1=1)led=(led1)|(0x80);delay(300);wait=1;if(led=0xfe)&(pair2=1)flag2=1;flag1=0;if(

10、flag2=1)led=(led1)|(0x01);delay(300);wait=1;void keyscan()if(k1=0)delay(20);if(k1=0)pair1=1;else pair1=0;else pair1=0;if(k2=0)delay(20);if(k2=0)pair2=1;else pair2=0;else pair2=0;void score()if(led=0xfe)&(pair2=0)&(wait=1) score1+;led=0x7f;flag1=0;flag2=0;wait=0;if(led=0x7f)&(pair1=0)&(wait=1)score2+

11、; led=0xfe;flag1=0;flag2=0;wait=0;void showscore()dig1=1;dig2=0;shuma=tablescore1;delay(20);dig1=0;dig2=1;shuma=tablescore2;delay(20);五、结论与体会本设计的乒乓球游戏系统是由STC单片机、共阴数码显示管、控制按键、三极管等器件构成的,设有双位数据显示、两个游戏按键以及一个系统整机复位按钮。设计精简,使用简单易懂。系统设计合理,线路简单、功能先进,性能稳定,程序精简。并给出了详细的电路设计方法。本系统是以单片机为核心,仅单片机方面知识是不够的,还应根据具体硬件结构

12、,以及针对具体应用对象特点的软件结合,以作完善。通过一个星期的努力,我终于完成了单片机的课程设计。在设计的过程中,我发现了自身的许多不足,比如自己的编程能力薄弱,软件不够熟悉、焊接技术有待提高等等。我觉得作为一名自动化专业的学生,单片机的课程设计是很有意义的,更重要的是如何把自己平时所学的东西应用到实际中。通过这次课程设计,加强了我们动手、思考和解决问题的能力。通过本次设计,复习巩固我们以前所学习的数电、模电、单片机原理及应用等课程知识,加深对各门课程及相互关系的理解,并成功使用了Wave、Protel 2004和Proteus三款电子软件,使理论知识系统化、实用化,系统地掌握微机应用系统的一般设计方法,培养较强的编程能力、开发能力。在这次课程设计过程中,我们了解了很多元件的功能,并且对于其在电路中的使用有了更多的认识。动手实践让我们对各个元件各个单元的组成及其相应的功能映象深刻。认识来源于实践,实践是认识的动力和最终目的,实践是检验真理的唯一标准。所以这个课程设计对我的作用是非常大的。通过这次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,才能真正为社会服务,从而提高自己的实际动手能力和独立思考的能力。最后衷心感谢老师的悉心授课和同学门的热心帮助!附:基于单片机的乒乓球游戏系统的硬件设计原理图13

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!