基于51单片机的模拟打地鼠游戏设计
图形化编程下游戏设计实现——以“打地鼠”游戏为实例

图形化编程下游戏设计实现——以“打地鼠”游戏为实例图形化编程下游戏设计实现——以“打地鼠”游戏为实例引言随着计算机技术的发展,图形化编程逐渐成为了软件开发的主流趋势。
图形化编程使得开发者无需深入了解编程语言的底层原理,便能轻松开发出各种应用程序,其中包括游戏。
游戏设计是图形化编程中最受欢迎的应用之一,因为它融合了创造力、逻辑思维和艺术性。
本文将以一个简单的“打地鼠”游戏为例,介绍图形化编程下的游戏设计与实现,并分享一些游戏开发的经验。
一、游戏设计概述“打地鼠”是一款非常经典和受欢迎的游戏,玩家需要在一定时间内尽可能多地击中从洞中冒出的地鼠。
游戏的难度通常通过地鼠的速度和冒出的时间间隔来调节,以增加游戏的挑战性。
在进行游戏设计之前,我们需要明确游戏的目标、规则和玩家的角色。
在“打地鼠”游戏中,玩家的目标是在限定的时间内击中尽可能多的地鼠,并获得高分。
游戏规则为玩家在游戏结束前必须击中尽可能多的地鼠,否则游戏结束。
玩家的角色则是一个持有锤子或其他工具的人,通过点击鼠标或触摸屏幕来击打地鼠。
二、游戏场景设计游戏场景设计是游戏开发的核心部分。
在“打地鼠”游戏中,我们需要创建一个由多个洞组成的地鼠出现区域,并在每个洞中随机放置一个地鼠。
地鼠在一定时间后会从洞中冒出,并在一定时间后消失。
玩家需要在地鼠冒出的瞬间快速点击它,以得分。
为了增加游戏的可玩性和趣味性,我们可以在游戏场景中添加一些道具和特殊效果。
例如,可以添加不同类型的地鼠,有些地鼠走得更快,有些地鼠会在被击中后爆炸,有些地鼠会削减玩家的时间。
此外,可以在场景中添加一些障碍物,需要玩家在击打地鼠时避开。
这些元素的添加将使游戏更加有趣且具有挑战性。
三、图形化编程工具选择与使用为了实现“打地鼠”游戏,我们可以选择使用一些常见的图形化编程工具,如Scratch、Unity、Unreal Engine等。
在本文中,我们将以Scratch作为图形化编程工具进行游戏设计与实现。
单片机课程设计 打地鼠

3.详细设计3.1 硬件设计1.芯片及原理介绍 (一)STC89C52STC89C52与MCS-51单片机产品兼容 、8K 字节在系统可编程Flash 存储器、 1000次擦写周期、 全静态操作:0Hz ~33MHz 、 三级加密程序存储器 、 32个可编程I/O 口线 、三个16位定时器/计数器 八个中断源 、全双工UART 串行通道、 低功耗空闲和掉电模式 、掉电后中断可唤醒 、看门狗定时器 、双数据指针 、掉电标识符 。
STC89C52的一些特殊功能口,如下表所示:(二)数码管 数码管使用条件:a 、段及小数点上加限流电阻b 、使用电压:段:根据发光颜色决定;小数点:根据发光颜色决定c 、使用电流:静态:总电流 80mA (每段 10mA );动态:平均电流 4-5mA 峰值电流 100mA 上面这只是七段数码管引脚图,其中共阳极数码管引脚图和共阴极的是一样的。
LED 数码显示原理:七段LED 显示器内部由七个条形发光二极管和一个小圆点发光二极管组成,根P1口引脚 特殊功能P1.0T2(定时器T2外部输入)P3口引脚P3.0 RXD (串行输入口) P3.1 TXD (串行输出口)P3.2 (外部中断0) P3.3 (外部中断1) P3.4 T0(定时器0外部输入) P3.5 T1(定时器1外部输入) P3.6 WR(外部数据存储器写选通)P3.7 RD (外部数据存储器读先通)agdefbcdpa 7b 6c 4d 2e 1f 9G N D 3G N D 8g 10dp 5据各管的极管的接线形式,可分成共阴极型和共阳极型。
LED数码管的g~a七个发光二极管因加正电压而发亮,因加零电压而不以发亮,不同亮暗的组合就能形成不同的字形,这种组合称之为字形码,下面给出共阴极的字形码表“0”3FH “8”7FH “4”66H “C”39H“1”06H “9”6FH “5”6DH “d”5EH“2”5BH “A”77H “6”7DH “E”79H“3”4FH “b”7CH “7”07H “F”71H 2.硬件原理图P0口通过连接4×4个矩阵键盘,游戏键盘,根据扫描检测到得按键值,依照相应游戏规则,判断游戏是否加分;P1口接4位8段数码管的段选脚a接P1.0以此类推。
基于PLC控制的打地鼠游戏装置的设计与制作

基于 PLC控制的打地鼠游戏装置的设计与制作摘要:打地鼠游戏玩法可以自行选择,不断升级;不同游戏玩法,就要设计不同PLC程序,激发同学们持续深入学习PLC的动力。
项目组在进行PLC控制技术开发时,先进行程序设计,然后计算机仿真,设计出仿真游戏,最后制作实物游戏装置。
本文介绍了基于PLC控制的打地鼠游戏装置的设计与制作的方法与过程等。
关键词:打地鼠;PLC;仿真游戏;计算机仿真1 引言随着铁道事业的不断发展,电气自动化水平不断提升, PLC控制技术在铁道电气化中的运用也越来越广泛,PLC控制技术的应用极大地促进了现代铁道电气化进程的推进。
现在铁道电气化控制装备较传统的装备来讲技术水平更高,这些得益于PLC控制技术的发展,在PLC控制技术主要是以微处理器作为基础,应用控制技术为实际造福,并且综合运用了自动的控制技术、计算机技术以及通讯信息技术等,极大地丰富了PLC控制技术的内容。
2基于PLC控制的打地鼠游戏装置的作用PLC技术在铁路电气化中的应用极为广泛,例如:PLC在铁路信号联锁控制中的应用、PLC在铁路除尘控制柜中的应用、PLC在动车组塞拉门控制中的应用等等。
PLC课程是铁道专业学生的重要专业基础课,它影响着后续多门重要专业课程的学习与理解。
PLC课程学习特点是入门容易,但学习精通较难。
不少同学在学习PLC课程时浅尝即止,缺乏持续的兴趣和动力,不愿意深入学习PLC课程。
为了激发同学们学习热情,深入学习PLC控制技术,为自己将来的铁路事业打下坚实的基础,在老师的指导下我们成立了创新项目组开展“基于PLC控制的打地鼠游戏装置的设计与制作”的项目研究。
通过游戏激发同学们持续深入学习PLC的动力,同学们既可以用自己掌握的PLC技术设计游戏,还可以通过自己设计的游戏来娱乐。
打地鼠游戏的玩法可以自行选择,不断升级。
不同的游戏玩法,就要设计不同的PLC程序,这样同学们就有了持续深入学习PLC的动力,不知不觉中提升了自己的PLC控制技术的水平。
自动化专业PLC课程设计-基于PLC系统设计“打地鼠”游戏

PLC课程设计(题目:基于PLC系统设计“打地鼠”游戏)院(系)电子通信工程学院专业班级自动化学生姓名学号设计地点指导教师目录一、绪论 (1)二、设计目的与功能 (1)三、硬件电路图设计 (1)四、程序设计 (2)五、调试及运行 (7)六、设计心得 (8)一、绪论PLC是一种专门为在工业环境下应用而设计的数字运算操作的电子装置。
它采用可以编制程序的存储器,用来在其内部存储执行逻辑运算、顺序运算、计时、计数和算术运算等操作的指令,并能通过数字式或模拟式的输入和输出,控制各种类型的机械或生产过程。
PLC及其有关的外围设备都应该按易于与工业控制系统形成一个整体,易于扩展其功能的原则而设计。
二、设计目的与功能(一)、设计的目的(1)综合运用PLC课程和其它选修课程的理论和知识,掌握PLC设计的一般方法,树立正确的设计思想,培养分析问题和解决实际问题的能力;(2)学会从控制系统功能的要求出发,合理的选择外围设备,制定设计方案,编写控制程序。
(3)学习使用技术手册,掌握查阅专业资料的相关方法。
(二)、设计功能(1)用一个灯代表游戏的开始,灯灭代表游戏的结束;并用另外三个灯代表地鼠。
(2) 用一个开关来控制游戏的开始(就是灯亮);并用另外三个开关来代表锤子,就是用来打地鼠,灯亮的时候按下开关灯灭,表示把地鼠打下去了,开关恢复,灯会按之前的设计继续亮,直到游戏结束。
(3) 程序要求可以能计算出正确的击打数,记录出击打总数和正确的击打数。
(4)代表游戏开始的灯灭时,其余三个灯也要结束,即游戏结束。
三、硬件电路图的设计利用CAD来画硬件电路图,在用CAD画图工具画图时要注意一些问题:1、养成经常存盘的好习惯2、利用好CAD本身的制作块与阵列功能。
基于51单片机的打地鼠游戏设计(源码齐全)

•6 个中断源。
2
•4 个中断优先级。 •4 个 8 位 I/O 口。 •全双工增强型 UART。 •3 个 16 位定时器/计数器:T0、T1、T2。 •全静态工作方式:0-24MHz
二、 游戏设计
(一) 基本设计
1. 游戏玩家有三次出错的机会,即三生命值,当按键的位置没有地鼠,则生命值 减一,生命值消耗玩,游戏结束。用一全局变量 blood(初始值设为 4),对 blood 的值进行检测,即可实现此功能。
9
/*定时器 1 中断计时,计算地鼠存在的时间*/
解释一下 showtime 和 et ,这两个变量分别作为地鼠出现频率和消失快慢的控制变量。
打地鼠的函数: 这里要强调的就是按键松开时候的抖动问题,最初调试程序的时候总是陷在这里。 while(gstart) { keyscan();/*主循环,不断扫描键盘*/ }
case 5 : if(d6==0){d6=1;lcd_pos(2,1);lcd_wdat(0x02);} else goto again;break;
case 6 : if(d7==0){d7=1;lcd_pos(2,2);lcd_wdat(0x02);} else goto again;break;
基于 STC89C52 单片机的打地鼠游戏机设计
队名:single boy 成员:梁炜锋 陈锦朝
摘要-----本设计为基于 51 单片机的打地鼠游戏机设计,用八个独立键盘代表地鼠位置,利用
12864 液晶显示屏显示游戏界面,用 AT24C02 芯片掉电储存最高得分数据,简单地模拟打地 鼠游戏。游戏机电路设计简单,算法设计稍复杂。
1
基于51单片机的打地鼠游戏机1602和led显示模拟(源码齐全)

目录一、摘要 (3)二、流程图 (4)三、电路原理 (5)四、操作说明 (7)五、演示图片 (8)六、程序代码 (11)一、摘要本作品采用STC89C52单片机作为主控芯片,选取LCD1602液晶作为显示屏,选用24C02芯片作为外部EEPROM存储得分等数据。
游戏程序应用C语言编译,主要使用函数为显示主界面函数,选择模式函数,随机函数,键盘扫描函数和众多界面函数。
系统配有开机音乐和led短暂特效;以及关闭游戏音乐效果。
目前配有三个难度等级,可以随时添加。
游戏中可以实时显示得分、时间等数据。
能够通过led显示和LCD1602同时显示地鼠的出现。
题目要求中所有内容均已完成,且加入了很多额外显示环节。
二、流程图三、电路原理1、主控芯片2、地鼠led和3*3键盘3、蜂鸣器和buzzer4、1602环节5、24C02芯片四、操作说明1.插上电源后,打开作品左下角的自锁开关启动。
2.系统启动后,会次显示“welcome”字样,以及本队伍的名称,并伴随着短暂的旋律,led闪烁效果。
紧接着便进入游戏选择界面,分别是:1.start 2.s core 3.exit分别对应着开始游戏,进入历史分数菜单,以及结束的功能。
通过button1 和button2键可以进行功能选择的切换和选取,button1用于切换,button2用于确认。
3.选择start选项之后会有5秒钟的准备时间,之后即可进入游戏,游戏分为3个关卡,难度依次上升,具体表现为地鼠产生的时间间隔依次减少,第一次为3秒间隔,往后依次递减。
以9个灯泡作为地鼠,每次随机亮一个灯泡,游戏者需要在另一个3*3的矩阵上在灯泡亮的时间内按下相应的按钮即代表击打相应位置,从而实现打地鼠的模拟功能。
4.游戏界面的上方有左右两行,分别对应显示剩余时间(每次游戏的时间为30秒),以及所获得的分数。
下方也有左右两行,分别对应当前所示洞的序数,5.若击中地鼠:正常情况下分数加1,播放提示音1;6.每关有(30/地鼠实现时间) 个地鼠(或地雷),击打完成后若分数大于等于level*10则进入下一关。
嵌入式课程设计报告--基于ARM平台的打地鼠游戏

中南大学嵌入式课程设计《基于ARM平台的打地鼠游戏》姓名:董嘉伟学号:0909103303班级:物联网1002指导教师:刘连浩李刚时间:2013-9-13目录●课程设计内容●课程设计实验环境●课程设计原理分析●课程设计开发计划●课程设计系统设计图●课程设计关键源码分析●课程设计成果展示●课程设计总结●参考资料●工程源代码一、课程设计内容本次课程设计基于课程《物联网与嵌入式系统》的学习,利用现有的硬件知识和计算机软件编程知识从以下三个题目选择一个作为课程设计内容:测频程序、交通灯演示系统、打地鼠游戏,难度依次递增。
基于个人实力和兴趣的考虑,我选择了打地鼠游戏作为我的课程设计题目。
具体要求如下:●LCD正确显示需求内容●触摸屏功能正常使用●基本的打地鼠游戏环节●打地鼠游戏流畅运行,无显著BUG●游戏结束后输出统计数据二、课程设计实验环境软件:WindowsXP\Keil uVision4.72\ARM DeveloperSuite1.2\H-JTAG\DNW\,其中keil编译优化等级为Level0.硬件:飞凌FL2440开发板,4.3寸(480*272)显示屏、USB-JTAG 仿真器实验室:中南大学-美国德州仪器联合嵌入式实验室三、课程设计原理分析1、LCD显示原理分析S3C2440的LCD控制器由由一个逻辑单元组成,它的作用是:把LCD 图像数据从一个位于系统内存的videobuffer传送到一个外部的LCD 驱动器。
LCD控制器使用一个基于时间的像素抖动算法和侦速率控制思想,可以支持单色,2-bitper pixel(4级灰度)或者4-bit-pixel(16级灰度)屏,并且它可以与256色(8BPP)和4096色(12BPP)的彩色STN LCD连接。
它支持1BPP,2BPP,4BPP,8BPP的调色板TFT彩色屏并且支持64K色(16BPP)和16M色(24BPP)非调色板真彩显示。
LCD控制器是可以编程满足不同的需求,关于水平,垂直方向的像素数目,数据接口的数据线宽度,接口时序和刷新速率。
打地鼠

jc QJN jc QJM jc QJL jc QJK
C
SW SW-PB4 ]imqJj\N
jcmqJj\NJJ jcmqJj\NJK
SW SW-PB5 ]imqJj\O
jcmqJj\OJJ jcmqJj\OJK
SW SW-PB6 ]imqJj\P
jcmqJj\PJJ jcmqJj\PJK
LED4 LED
]ijQ P7 Header 4
C
P8 ]ijR P10 hfjKJ 8 jcjRJRhfjKK P11 7 jcjRJQhfjKL P12 6 jcjRJPhfjKM P13 5 jcjRJO ]if_^P LED6 jcjRJNhfjKN P14 4 LED hfjKO P15 3 jcjRJM hfjKP P16 2 jcjRJL hfjKQ P17 jcjRJK 1 Header 8
P2 ]ijL 8 jcjLJR 7 jcjLJQ 6 jcjLJP 5 jcjLJO 4 jcjLJN 3 jcjLJM 2 jcjLJL 1 jcjLJK Header 8
jcf_^KJ jcf_^KJL jcf_^NJK jcf_^NJL
jcf_^QJK jcf_^QJL
]if_^K LED1 LED
SW
SW
SW
]if_^S LED9
LED
D
流水灯
1 2 3
矩阵键盘
4
D
]imqJj\J j[mqJj\JJK
]if_^KJ j[f_^KJJK
]imK
j[f_^KJJL j[mqJj\JJJ
]iKJK j[mKJL j[mKJM
j[mKJP j[mKJO j[mKJN
]ijM
j[mqJj\MJK
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
.
《现代通信技术》课程设计基于51单片机的模拟打地鼠游戏设计
院系:工学院
专业班级:通信工程10秋2班
姓名:钟丽薇
学号:10032202
小组成员:陆韵
指导教师:徐振、赵兰
完成日期2013年10月
目录
1 设计任务 (1)
1.1设计题目及材料 (1)
1.2设计要求 (1)
1.3设计进度安排 (2)
2 总体方案 (3)
2.1硬件设计 (3)
2.1.1 主控芯片 (3)
2.1.2 数码管模块 (4)
2.1.3 LED模块 (5)
2.1.4 独立按键模块 (5)
2.2软件设计 (6)
3 功能调试 (7)
3.1调试过程 (7)
3.2调试中遇到的问题 (7)
4 设计总结 (8)
5 致谢 (9)
1 设计任务
通过本次课程设计,运用已学的课程知识,自主设定题目及要求,进行软硬件系统的设计和调试,对《现代通信技术》课程中涉及的芯片结构、控制原理、硬件和编程等方面有一定的感性认识和实践操作能力,从而加深对本课程知识点的理解,使应用知识能力、设计能力、调试能力以及报告撰写能力等方面有显著提高。
1.1 设计题目及材料
我们的课程设计选题定为《基于51单片机的模拟打地鼠游戏设计》。
将所掌握的的元器件组合在一起,设计出具有可玩性的实用小制作,不仅巩固了已学习的知识,更能拓展自己的思维能力。
所用到的材料:
表1.1 材料列表
STC89C52单片机开发板1块
4位8段数码管(共阳)1个
LED灯5个
轻触按键5个
100Ω电阻5个
0.5kΩ电阻4个
9013三极管4个
杜邦线若干
1.2 设计要求
要求作品完成后,可以实现简易打地鼠游戏的功能。
具体如下:接通电源后,游戏开始,数码管显示“0”,同时随意点亮一个LED,在2秒时间内按下对应的按键,则数码管示数加一,游戏继续;
反之,则示数归零,游戏结束
1.3 设计进度安排
表1.2 设计进度安排
10月21日(周一) 收集资料,确定选题,大致设计方案10月22日(周二) 设计电路图,采购所需材料
10月23日(周三) 完成具体设计,组装电路板
10月24日(周四) 完成硬件部分,完成部分论文
编写程序;软硬件调试
10月28日(周一) 至
10月29日(周二)
10月30日(周三) 最终调试,完成论文
2 总体方案
2.1 硬件设计
采用AT89S52为主控芯片的单片机开发板,选取共阳四位八段数码管作为计分显示,以及5个LED和5个独立按键分别制作模块,通过杜邦线连接到单片机上,使其成为一个为简易的游戏机。
本游戏硬件部分的电路原理图是自行设计,电路板全部为手工布线与焊接。
图2.1为设计的电路图。
图2.1 电路原理图
2.1.1 主控芯片
我们采用STC89C52为主控芯片,具体引脚图如图2.2。
图2.2 STC89C52芯片引脚图
2.1.2 数码管模块
采用共阳的数码管,可使电路的设计变的较为简单,只需要使用4个三极管(9013)以及4个限流电阻(0.5kΩ)即可实现数码管的功能。
图2.3 数码管模块电路图
2.1.3 LED模块
将5个LED分别与5个100Ω的电阻串联,可有效防止LED过热。
图2.4 LED模块电路图
2.1.4 独立按键模块
独立按键需要采用质量较好的轻触按键,使游戏的可玩性增强。
图2.5 LED模块电路图
2.2 软件设计
游戏程序应用C 语言编译,主要使用函数为随机函数和键盘扫描函数。
通过随机函数产生一个随机数,并同时使对应的LED 点亮,即可出现随机的“地鼠”。
通过键盘扫描函数,使每个按键各对应一个LED 灯,通过按下该键使相应LED 灯熄灭。
开始
产生一个随机数x
点亮编号x 的LED
检测编号x 的按键
是否被按下
编号x 的LED 熄灭数码管示数加1
编号x 的LED 熄灭数码管归零
游戏结束
数码管归零
否
是
图2.6 系统流程图
3 功能调试
3.1 调试过程
1.硬件焊接完成后,首先使用单片机开发板的5V接口和GND接口对元件功能进行简单测试,确保元件焊接无错误,可正常工作。
2.烧录程序,正确连接管脚,测试程序是否顺利执行。
3.2 调试中遇到的问题
对于编程很生疏,所以编好的程序存在着很多问题,比如无法正确显示数码管示数、以及某LED灯点亮后,规定时间内按下对应按键,LED 却不熄灭,分数不累加的问题。
对于第一个数码管示数错误的问题,我们对数码管示数的编码进行核对,发现使用了共阴数码管的编码,导致数码管示数的乱码,修改为共阳数码管的数字编码,解决了示数错的问题。
第二个问题,则查看了按键的循环检测程序,发现程序中的一些逻辑编译错误,改正之后,功能即可实现。
4 设计总结
经过两个星期的设计,经过不懈的调试和修改,作品的设计功能基本实现,通过这两个星期的实践,对于设计一个项目的能力得到了锻炼,同时了解到了自学的重要性。
不仅要掌握课堂上所学到的理论知识,更重要是在实践的过程学习更多的新知识。
只有自己实际操作过实践过的知识,我们才能真正的理解运用。
课程设计的过程不仅仅是一次对自己专业能力的挑战,也是对团队协作能力的一次锻炼,因为在一个团队里,有明确的分工和职责,每个人都有一致的团队精神才能又快又好高质量的完成任务。
另外,这对自己的耐心以及抗压能力也是一次很大的锻炼,因为每一次程序无法工作都给自己心里制造了一份压力。
要学会从失败中学习,一次次尝试,不能放弃,才能获得最终的成功。
5 致谢
这次课程设计完成离不开徐振老师和赵兰老师的帮助,以及胡根香老师对于我们所需元器件的提供。
当我们在卡在一些问题无法解决时,是他们给了我们许多帮助。
使得我们的设计能过突破一些难题最终完成。
让我们把知识运用最大化。
因此,在这里再一次感谢几位老师不辞辛苦的教诲和帮助。
6参考文献
[1]王千著,《实用电子电路大全》,电子工业出版社,2001
[2]何立民著,《单片机应用技术选编》,北京:北京航空大学出版社,2005
[3]李华著,《MCS-51系列单片机使用接口技术》,北京航空航天大学出版社,2003
[4]潘永雄著,《新编单片机原理与应用》,西安:西安电子科技大学出版社,2003。