您好,欢迎来到图艺博知识网。
搜索
您的当前位置:首页基于51单片机的综合游戏机的设计与实现

基于51单片机的综合游戏机的设计与实现

来源:图艺博知识网
叶工业控制计算机曳圆园员愿年第猿员卷第苑期143

基于缘员单片机的综合游戏机的设计与实现

李晓彤

王华阳

罗劲睿

蕾渊北京理工大学信息与电子学院袁北京员园园园愿员冤

摘要院伴随着科技的高速发展袁游戏以更多的形式展现给人们遥基于缘员单片机的综合游戏机实现了功能上的创新遥对设计部分从总体到细节进行了说明袁包括硬件和软件遥在硬件部分介绍了电路的主要组成部分袁讨论了如何设计整个电路遥在软件部分袁使用流程图来清楚地显示设计流程遥软件部分主要包括五部分院贪吃蛇尧俄罗斯方块尧打砖块尧综合界面和音乐遥设计的创新之处有贪吃蛇穿墙而过袁俄罗斯方块来自三个方向袁打砖块中弹球打到蕴块袁板子长短变化等遥实现部分从软硬件两个方面进行了论述袁其中又分为几个小模块袁把该部分更清晰而有逻辑地展示遥

关键词院缘员单片机袁运藻蚤造袁孕则燥贼藻怎泽袁贪吃蛇袁俄罗斯方块袁打砖块

粤遭泽贼则葬糟贼押栽澡蚤泽责葬责藻则蚤灶贼则燥凿怎糟藻泽枣则燥皂贼燥贼葬造贼燥凿藻贼葬蚤造泽熏憎澡蚤糟澡蚤灶糟造怎凿藻泽澡葬则凿憎葬则藻葬灶凿泽燥枣贼憎葬则藻援陨灶澡葬则凿憎葬则藻责葬则贼熏蚤贼凿蚤泽糟怎泽泽藻泽葬遭燥怎贼澡燥憎贼燥凿藻泽蚤早灶贼澡藻憎澡燥造藻糟蚤则糟怎蚤贼援陨灶泽燥枣贼憎葬则藻责葬则贼熏蚤贼怎泽藻泽枣造燥憎糟澡葬则贼贼燥泽澡燥憎凿藻泽蚤早灶责则燥糟藻泽泽蚤灶早援陨贼蚤灶糟造怎凿藻泽缘责葬则贼泽押杂灶葬噪藻熏栽藻贼则蚤泽熏月则藻葬噪燥怎贼熏陨灶贼藻早则葬贼藻凿宰蚤灶凿燥憎葬灶凿皂怎泽蚤糟援栽澡藻蚤灶灶燥增葬贼蚤燥灶泽燥枣贼澡藻凿藻泽蚤早灶蚤灶糟造怎凿藻泽灶葬噪藻早燥蚤灶早贼澡则燥怎早澡贼澡藻憎葬造造熏栽藻贼则蚤泽糟燥皂蚤灶早枣则燥皂猿凿蚤则藻糟贼蚤燥灶泽熏遭葬造造澡蚤贼贼澡藻野蕴冶遭则蚤糟噪葬灶凿贼澡藻造藻灶早贼澡燥枣贼澡藻遭燥葬则凿糟澡葬灶早蚤灶早熏葬灶凿泽燥枣燥则贼澡援宰蚤贼澡则藻早葬则凿贼燥贼澡藻蚤皂责造藻鄄皂藻灶贼责葬则贼熏蚤贼蚤灶贼则燥凿怎糟藻泽枣则燥皂澡葬则凿憎葬则藻葬灶凿泽燥枣贼憎葬则藻援

运藻赠憎燥则凿泽押缘员杂蚤灶早造藻原悦澡蚤责酝蚤糟则燥糟燥皂责怎贼藻则熏运藻蚤造熏孕则燥贼藻怎泽熏泽灶葬噪藻熏贼藻贼则蚤泽熏遭则藻葬噪燥怎贼

本项目致力于以较低的花费打造一台基于缘员单片机的综合游戏机袁并以期在后续的工作中量化生产遥为了达成项目目标袁通过调查袁综合考虑难度及适龄性等因素袁选定了三款主打游戏贪吃蛇尧俄罗斯方块尧打砖块进行设计与改进遥

市面上的缘员单片机综合游戏机存在严重的滞后性遥从玩法尧设计等方面着手袁对此进行总结尧分析袁将本项目的重点放在了突破这些停滞点袁完成游戏的升级袁以此实现游戏机的创新遥就市场现状而言袁市面上缘员单片机主要搭载的三款游戏分别具有以下特点及局限渊包括但不限于冤院贪吃蛇中袁蛇只能向前移动曰当蛇撞到墙袁游戏结束袁即蛇不能穿墙而过曰蛇的组成元素过于单一渊黑点冤袁易混淆曰俄罗斯方块中袁方块只能从一个固定方向下落曰方块不能进行旋转曰打砖块中袁球消除砖块方式单一渊接触砖块冤曰无附加模块尧功能袁可玩性有限遥

本项目主要运用了孕则燥贼藻怎泽苑援员园和运藻蚤造滋灾蚤泽蚤燥灶源两个基础软件袁除了改进游戏的功能袁还加入了页面设计尧音效设计等创新之处遥

本项目主要采用缘员单片机尧蕴悦阅员圆愿远源屏尧蜂鸣器尧发声器尧按键构成电路遥缘员单片机实现一般控制袁蜂鸣器实现声音控制袁按键实现游戏控制遥通过电路将这三个主要部件和一些辅助部件渊如电源冤连接袁通过单片机的重要组成部分要要要中断系统来计算时间和移动块袁最终完成该游戏机遥员综合游戏机的设计

设计一款基于缘员单片机的综合游戏机袁首先要了解缘员单片机的工作原理袁然后进入各个模块并进行代码的创新遥员援员硬件设计

蜂鸣器院改变单片机输出波形的频率袁调节蜂鸣器的音调袁产生各种不同的声音和音调遥改变高尧低电平工作周期的输出电

平袁控制蜂鸣器的声音大小遥

按键院在由单片机和智能仪表组成的测控系统中袁最常用的是一个按键遥该按键具有相对简单的硬件和软件功能渊如图员冤遥

通过程序确定陨辕韵接口的状态渊高低电平冤袁可知按键是否按下遥电路院蕴悦阅员圆愿远源和两片缘员单片机芯片之间进行信息交换以实现对音乐的控制渊如图圆冤遥

图圆音乐控制电路

表员蕴悦阅员圆愿远源液晶显示屏引脚功能说明

图员利用酝悦杂原缘员单片机设计孕员的非编码键盘

144

员援圆软件设计

需要注意的是袁电路中需要一个上拉电阻袁否则蕴悦阅显示屏不工作遥蕴悦阅员圆愿远源的各个引脚的功能在表员中列出遥员援圆援员贪吃蛇尧俄罗斯方块

图猿贪吃蛇流程图

图源俄罗斯方块流程图

基于缘员单片机的综合游戏机的设计与实现

本游戏机用定时器控制蛇的移动袁流程图如图猿遥蛇的动作是用指针控制的遥当蛇向前移动时袁会在它的头部加一个块袁并在它的尾部删除一个块遥由野蚤枣冶控制流袁单片机可以判断蛇的状态袁如它是否撞上墙或撞上自己遥当比分超过员园时袁屏幕上就会出现野你赢了冶遥

俄罗斯方块流程图如图源所示遥员援圆援圆打砖块尧综合界面

打砖块的设计非常复杂袁清晰的软件设计和结构非常重要遥该设计以时间为随机种子随机生成野蕴冶块遥当球击中野蕴冶块时袁参数会改变袁并出现一个长板袁在随机时间后会消失遥流程图渊图缘冤显示每个结构之间的关系遥

图缘打砖块的流程图

综合界面流程图如图远所示遥

图远综合界面流程图

员援圆援猿音乐

为保证音乐和游戏的同步性和稳定性袁项目选择使用两个芯片分别控制音乐和游戏遥在对比并行输入和串行输入的特点后采用传输速率更快的并行输入方式并致力于给玩家提供最佳的游戏体验遥音乐模块流程图如图苑遥员援猿创新之处

该游戏机有很多创新点遥有些功能也许在一些成品游戏中用悦尧悦垣垣或哉灶蚤贼赠已实现遥但本项目用缘员单片机来实现它袁也是一种创新遥员援猿援员贪吃蛇

穿墙而过院当蛇撞到墙时袁若玩家的分数低于缘袁则游戏结束曰若玩家的分数超过缘袁但小于员园袁蛇仍活着袁进入墙袁然后从屏幕的对面相应位置再钻出来遥

点的图案院蛇的身体和食物都是由特殊图案的点做成的遥每个点都不是简单的纯黑色点袁而是由源伊源的方阵组成的渊如图

叶工业控制计算机曳圆园员愿年第猿员卷第苑期图苑音乐模块的流程图

愿冤遥这种设计是为了更好地显示蛇和食物袁避免因视觉混淆袁无法快速得知方块的个数遥

辅助显示院屏幕上会显示记分板袁并适合游戏的进程显示野游戏结束冶和野你赢了冶渊比分超过员园则赢了冤遥员援猿援圆俄罗斯方块

多方向显示方块院普通俄罗斯方块

游戏仅能在单一方向移动方块遥本游戏

图愿特殊图案的点

中袁方块多方向出现袁即向下渊左尧右冤三个方向袁并沿该方向移动遥移动方向为向左渊右冤时袁方块到达左渊右冤边界袁会自动停止并且变为向下移动袁直至底部遥该设计增加了游戏乐趣袁并增加游戏难度遥当方块向左渊右冤移动时袁由于左右距离较小袁使玩家对方块的反应和控制的时间大大缩短遥

方向控制键随方向变化院随着方块方向的变化袁控制移动按键的功能也会发生相应变化遥例如方块向左移动袁原本执行向左移的功能键袁其功能变为向左加速袁执行向下加速的功能键袁改变为使方块向下移动一格遥

方块旋转院方块生成后袁运动过程中可使其旋转袁产生多种形状袁使玩家更容易填充整个图形袁适当调整游戏难度袁增加游戏乐趣遥

消行特效院每当填满一行时袁游戏消除满行袁产生消行特效袁特效效果为每个花点从底部到顶部依次闪烁遥其原理为将原点阵显示取反袁点亮原本熄灭的点袁熄灭原本点亮的点袁由此产生闪烁效果遥员援猿援猿打砖块

野文字显示院主屏野月砸耘粤运韵哉栽冶的字母逐一出现定糟造燥灶藻时器控制冶滚动袁出与现晶袁野体孕则藻泽泽振荡器有关杂贼葬则贼冶袁闪每烁次遥在这些主要由循环尧袁指单针词和式袁这野月陨栽样砖冶院块使上将用字体矩阵软件来获取每屏个幕字上符出的现十一个六进字制符表遥

达中有野一个蕴冶块字院使符用野蕴时显冶渊间示为作为随机团队标志造燥灶早的首种野月陨栽字子母袁冶遥

会冤在技能随机出块现上一个显示技能遥如块果袁其球击中野蕴冶块袁板将无限变长袁在随机的时间段后袁长板将变短遥这

145

个技巧可以让游戏更具挑战性遥员援猿援源综合界面

汉字显示院使用二进制码表示汉字的点阵显示袁利用显示函数和二进制码将汉字显示在蕴悦阅屏上遥

选择特效院玩家选择框移动到某一游戏袁该游戏名称产生特效野耀显冶全示袁原理是将原来员远伊员远的选择部取游反戏袁由院变此量产糟燥怎灶贼生反白汉字点阵显示利用取反符号表示效果当遥

前游戏选择状态袁选择糟燥怎灶贼的值进入相应的游戏遥例如糟燥怎灶贼越员袁选择的游戏为俄罗斯方块曰糟燥怎灶贼越圆袁选择的游戏为贪吃蛇遥游戏结束后袁重新回到主界面函数遥设置外部中断标志表示游戏的开始和结束遥标志位为园时程序回到主界面袁标志位为员时进入游戏状态袁外部按键信息向该标志位赋值遥员援猿援缘音乐

经过搜索后选定了使用定义音调和节拍的方法来使泽燥怎灶凿藻则发出不同频率的声调袁再加上延时时间的控制来控制节拍演奏音乐遥理论上袁这个方法可以用于大多数音乐袁并且由于并行输入方式的使用袁这个系统最多可以控制圆愿首音乐遥圆综合游戏机的实现圆援员硬件方面

部分电路如图怨所示遥

图怨贪吃蛇和俄罗斯方块以及音乐的电路渊包括综合界面冤

图员园贪吃蛇穿墙而过代码

渊下转第员缘猿页冤

叶工业控制计算机曳圆园员愿年第猿员卷第苑期达到缘源援员缘豫袁满足设计要求遥

同时对输出的电压信号进行纹波测试袁缘个为员组袁取均值袁结果如表员所示遥

表员

输出电压纹波测试结果

153

咱员暂曹玲玲袁陈乾宏袁任小永袁等援电动汽车高效率无线充电技术的研究进咱圆暂王建宝援气动系统无线供电技术研究咱阅暂援成都院电子科技大学袁圆园员圆

器学报袁圆园员源袁圆愿渊源冤院源猿源原源源园

展咱允暂援电工技术学报袁圆园员圆袁圆苑渊愿冤院员原员猿

咱猿暂陈新袁张桂香援电磁感应无线充电的联合仿真研究咱允暂援电子测量与仪咱源暂韩伟援电磁感应无线充电系统的设计和实现咱阅暂援苏州院苏州大学袁咱缘暂胡超援电动汽车无线供电电磁耦合机构能效特性及优化方法研究咱阅暂援咱远暂翟渊袁孙跃袁苏玉刚袁等援具有恒压特性的磁共振模式无线供电系统咱苑暂丁恩杰袁薛慧袁孙志峰袁等援基于磁耦合谐振的无线充电系统建模与分咱愿暂窦延军援一种磁耦合谐振式无线充电系统的设计咱阅暂援成都院电子科技咱怨暂朱美杰援感应式无线充电技术的研究咱阅暂援南京院南京信息工程大学袁

圆园员圆

咱收稿日期院圆园员愿援猿援猿园暂

大学袁圆园员猿

析咱允暂援中国矿业大学学报袁圆园员源袁源猿渊缘冤院怨圆苑原怨猿圆咱允暂援电工技术学报袁圆园员源袁圆怨渊怨冤院员圆原员远重庆院重庆大学袁圆园员缘圆园员源

参考文献

由表员可知袁纹波基本满足设计要求袁分析其产生的主要原因在于逆变电路中的酝韵杂管的开关造成袁同时无线传输过程中袁磁场转换成电的效率不稳定袁也可能造成电压波动遥

功率方面袁直接用实际信号输出卡件进行测量袁满足缘灾圆粤稳定输出的设计指标袁通过调节酝韵杂管的开关频率袁可达到最大员缘宰的输出功率遥源结束语

本文结合阅悦杂系统袁设计并实现了一种基于阅悦杂的无线供电方案袁用以探索无线供电技术在工业控制领域应用的可行性遥所设计供电系统可通过增加酝韵杂管的开关频率袁来增大传输功率袁最大可达员缘宰遥后续优化可以参考匝蚤标准袁增加无线数据通信功能袁并结合孕陨阅调整袁对输出进行反馈控制遥

渊上接第员源缘页冤

圆援圆软件方面

整个代码太长袁这里只展示一部分遥圆援圆援员贪吃蛇

这段代码用来控制蛇进入墙壁并从对面的位置钻出来袁即蛇穿墙而过袁如图员园所示遥

圆援圆援圆俄罗斯方块

俄罗斯方块程序的模块化主要包括院主循环函数尧图形显示尧移动原理尧外部控制移动尧边界判断以及多方向遥各个模块也都细致到位袁如院在外部控制移动中袁该功能由中断函数实现袁接收到外界按键信号袁单片机进入中断程序曰变量噪储存移动信息曰根据外部信息对噪赋值袁噪可取园尧员尧圆尧猿袁对应左移尧右移尧向下加速和旋转方块的功能曰结束中断袁主函数中判断噪值袁执行相应程序袁实现运动控制遥圆援圆援猿打砖块

使板子变长的代码如图员员所示遥圆援圆援源音乐

使用憎澡蚤造藻监测输入袁直到检测到开始播放音乐的信号遥嵌套循环中袁定时器园和凿藻造葬赠函数按照既定的音调节拍播放音乐遥提前设定两个音乐终止信号袁对应两个游戏遥检测到音乐终止信号袁跳出循环袁回复到憎澡蚤造藻循环监测输入的过程遥猿结束语

在未来的工作中袁可以使游戏机的功能更加强大遥例如袁当玩游戏时间超过员小时袁游戏机将停止工作袁以防止游戏者上瘾遥

参考文献

咱员暂郭天祥援新概念缘员单片机悦语言教程咱酝暂援北京院电子工业出版社袁咱圆暂月则蚤葬灶宰运藻则灶蚤早澡葬灶熏阅藻灶灶蚤泽酝砸蚤贼糟澡蚤藻援栽澡藻悦责则燥早则葬皂皂蚤灶早造葬灶鄄咱猿暂彭伟援单片机悦语言程序设计实训员园园例押基于愿园缘员垣孕则燥贼藻怎泽仿真咱源暂钟蔚袁袁臣虎袁林志贵袁等援点阵式蕴耘阅滚动汉字显示屏的孕则燥贼藻怎泽咱缘暂汪宁援孕则燥贼藻怎泽软件的单片机仿真方法咱允暂援山东轻工业学院学报渊自

然科学版冤袁圆园园苑渊员冤院圆源原圆苑

咱收稿日期院圆园员愿援圆援圆苑暂

图员员打砖块使板子变长的代码

仿真设计咱允暂援微计算机信息袁圆园园愿渊远冤院员园远原员园苑咱酝暂援圆版援北京院电子工业出版社袁圆园员圆早怎葬早藻眼酝演援孕则藻灶贼蚤糟藻匀葬造造熏圆园园源圆园园苑

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuoyibo.net 版权所有 湘ICP备2023021910号-2

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务