




已阅读5页,还剩34页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业论文(设计)中文题目基于单片机的数字爆炸游戏英文题目THEGAMEOFTHEEXPLOSIVEFIGUREBASEDONTHESINGLECHIPSYSTEM专业班级09电子信息工程2班提交日期2013年5月15日摘要虽然社会不断进步和经济快速增长,但是现代人的幸福感却越来越少。超负荷的工作压力,急功近利的心理倾向,学习任务过于繁重,高考不如意如何调整心态,生活贫困加重心理压力,老年人缺乏精神关爱等等问题,使得社会各个阶层的人的生活压力越来越大,苦不堪言。因此,通过适当的游戏活动改善这种生活状态显得尤为重要。本论文设计一款基于单片机的数字爆炸游戏。基于目前社交活动日渐频繁,人们在日常聚会中为了调节气氛,会安排适当的游戏,从而释放生活压力,添加生活乐趣,同时也增进了同学朋友之间友谊,而数字爆炸游戏是其中常用的一种游戏。本设计以STC89C52单片机为基础,带有按键及显示屏的游戏平台,基于C语言开发游戏程序,给人们日常游戏提供方便。关键词数字爆炸游戏平台单片机THEGAMEOFTHEEXPLOSIVEFIGUREBASEDONTHESINGLECHIPSYSTEMABSTRACTNOWADAYS,THESENSEOFHAPPINESSOFMODERNPEOPLEISLESSANDLESS,ALTHOUGHTHESOCIALPROGRESSANDRAPIDECONOMICGROWTHTHEPRESSUREOFTHEIRWORKISTOOHARD,THEPSYCHOLOGICALTENDENCIESOFQUICKSUCCESSISTOOSERIOUS,THETASKOFLEARNINGISTOOHEAVY,HOWTOADJUSTTHEIRATTITUDEWHENFAILUREINTHECOLLEGEENTRANCEEXAMINATION,THEPSYCHOLOGICALPRESSUREINCREASEBECAUSEOFTHELIVINGOFPOVERTY,LACKOFSPIRITUALCAREOFOLDERPERSONS,ANDSOONPRESSUREOFLIFEFORPEOPLEOFALLLEVELSOFSOCIETYISMOREANDMOREMISERABLETOIMPROVETHELIVINGCONDITIONSTHROUGHAPPROPRIATEACTIVITIESANDGAMESISPARTICULARLYIMPORTANTINTHISTHESIS,THETHEEXPLOSIVEFIGUREGAMEBASEDONTHESINGLECHIPISDESIGNEDBASEDONTHECURRENTSOCIALEVENTSBECOMEMOREFREQUENT,INORDERTOREGULATETHEATMOSPHEREATAPARTY,PEOPLEWILLARRANGESOMECASUALGAMESTORELEASETHEPRESSUREOFLIFE,ANDFINDMOREHAPPINESSINTHEIROWNLIFE,ASWELLASTOPROMOTETHEFRIENDSHIPBETWEENCLASSMATESANDFRIENDSTHEGAME,THEEXPLOSIVEFIGURE,ISCOMMONLYUSEDTHEWORK,BASEDONTHESTC89C52SINGLECHIPSYSTEM,ISAGAMINGPLATFORMWITHKEYGROUPSANDDISPLAY,WHICHISDEVELOPEDUSINGCLANGUAGEANYWAY,THEWORKCANPROVECONVENIENCETOTHEMODERNPEOPLESDAILYGAMEKEYWORDSTHEEXPLOSIVEFIGUREGAMINGPLATFORMSINGLECHIPSYSTEM目录1绪论111聚会游戏的背景及研究意义112各种聚会游戏及其比较12游戏平台总体设计321游戏具体流程实现322游戏模块设计4221单片机控制主模块4222显示电路模块5223键盘输入模块5224语音提示模块53游戏平台硬件设计531设计概述与要求532基于STC89C52的最小系统硬件设计6321STC89C52单片机简介6322复位电路7323时钟电路733显示电路模块设计9331TFTLCD模块9322TFTLCD与单片机连接电路934键盘输入模块10341矩阵键盘10342矩阵键盘电路图1135语音提示模块11351SYN6288语音芯片11352系统构成框图1236电源稳压模块124游戏平台软件设计1241软件总体设计和开发平台1242数字范围更新1443模块软件设计155结论16致谢17参考文献18附录一单片机STC89C52主程序20附录二TFTLCD显示程序26附录三矩阵键盘程序341绪论11聚会游戏的背景及研究意义随着国内经济的高速发展,越来越多的人往城市迁移,国内城市化步伐加快,但在繁华背后人们出现的心理问题不容忽视,城市的繁华与人们心中的空洞形成了十分鲜明的对比。城市人多,但是却一个个形同陌路,这是很多城市人心中难以诉说的悲剧。因此,人们会在工作学习之余,与相识相知的朋友进行聚会,微妙的情感牵引着人们走到了一起。在聚会过程中,为了避免冷场情况,人们经常会在聚会过程中进行一系列的聚会游戏。聚会游戏的具体定义是指朋友、同事、家人或公司单位等在平时聚会、开派对以及过年过节酒宴上为了活跃气氛、加深彼此感情、提高凝聚力等目的而进行的集体互动游戏,一般是至少2人以上的多人互动游戏。聚会游戏其实并非是现代社会的产品,在我国自古以来就有聚会游戏,大多在文人雅士间盛行,其中行酒令是很常见的一种助兴方式。一般是指席间推举一人为令官,余者听令轮流说诗词、联语或其他类似游戏,违令者或负者罚饮,所以又称“行令饮酒”。而到现代社会,聚会游戏则越趋通俗化、简单化,从而适合更普遍的人群进行游戏。12各种聚会游戏及其比较人们在聚会过程中进行的游戏是多种多样的,以下列举一些在实际生活中聚会过程中应用较多的游戏予以介绍(1)桌游棋牌类游戏桌上游戏发源于德国,在欧美地区已经风行了几十年。大家以游戏会友、交友。在国外,桌上游戏内容涉及战争、贸易、文化、艺术、城市建设、历史等多个方面,大多使用纸质材料加上精美的模型辅助。它是一种面对面的游戏,非常强调交流。因此,桌面游戏是家庭休闲、朋友聚会、甚至商务闲暇等多种场合的最佳沟通方式。21世纪初它也登陆到中国国内,风靡白领群体。从有人类文明开始就有了桌上游戏的开始。几乎在各种古文明甚至某些史前文明中都可以发现桌上游戏的痕迹。在大量的历史文献,考古遗迹中我们都发现了桌上游戏存在的证据MERKNERA埃及法老古墓中我们发现了SENET这一迄今认为是最古老的桌上游戏。桌上游戏在现代的复兴起于20世纪初期,随着西方国家里中产阶级的形成而兴起。这一人群有着可供休闲消费的时间和金钱条件并且受过良好的教育,他们理所当然的成为这一游戏方式的接受者。这种流行在二战后更加广泛世界政治经济体系面临战后重建,但人们又无法熄灭对战争与竞争渴求的星星之火,于是大量以游戏方式模拟竞技的桌上游戏营运而生,其中更包括了大量以虚拟战争为主题材的原形,这成为了桌上游戏发展的黄金时代。电脑游戏是桌面游戏的近亲,很多里程碑式的电脑游戏如“文明”全是在其桌上游戏的版本上发展而来。随着电脑游戏的兴起,桌上游戏有着衰退的迹象,直到近年来,博智式,也被称为德式桌面游戏的兴起使得桌上游戏又焕发了新的青春。如今,桌上游戏在欧美地区已经风行了几十年,亦早已是风靡社会的社交活动。大家以游戏会友、交友。在国外,桌面游戏已经成为与书本一样品种多样的出版物,内容涉及战争、贸易、文化、艺术、城市建设、历史等多个方面。而在我国常见的桌游棋牌类游戏有象棋、围棋、五子棋、大富翁、三国杀、UNO、斗地主在近几年来,我国普遍不如小康水平,温饱等问题得到解决,人们有更多的时间进行游戏,因此也推进了该类桌游棋牌游戏的发展,更有多种多样的棋牌类游戏产生,使得人们的游戏选择更多样化。(2)语言交互式游戏语言交互式游戏,是以多人语言交流彼此所得到的信息从而进行游戏的。游戏原理是各人所得到信息的不同,而语言交流时信息的正确性无法得到保证,因此要通过自身对信息的辨别能力,挖掘出其中真实的信息碎片,找出事实真相。典型的语言交互式游戏代表作品有杀人游戏、狼人游戏等。语言交互式游戏对游戏成员智力和心力进行考验,概括地说,是一个多人参与的较量口才和分析判断能力(推理)的游戏,当然,心理素质在中间也起着很关键的作用。此类游戏吸引人的地方在于坏势力隐蔽藏匿表演时候的刺激和好势力找出真相时候的成就感。该类游戏能锻炼人的观察能力、逻辑能力、想象力、判断力、口才、表述能力、心理素质及表演能力;能培养团队精神、活跃团体气氛、增进团队成员的感情交流、提高凝聚力;提高人的语言表达能力,提高人的判断能力,相当于一场激烈的辩论会;以游戏交识朋友,可以和各种职业、各种类型的人结交朋友,通过游戏了解对方的性格特点并借助游戏中的交流加深彼此间的了解。(3)随机选取惩罚游戏此种游戏主要是通过随机选取游戏玩家,给予其一定的惩罚进行游戏的,主要游戏方士是其随机选取玩家的过程,游戏玩家为了避免受到惩罚从而害怕被随机选取到,因此增添了游戏的刺激感。该类游戏有流行已久的转酒瓶游戏、投骰子、数字爆炸游戏等,游戏以简单为主,游戏门槛低,因此十分适合普遍大众。经典的转酒瓶游戏,是以一个空酒瓶为道具,游戏玩家围成一圈,将酒瓶放平在中间后,对酒瓶进行旋转,规定酒瓶停止旋转后,瓶口所指向的玩家即为随机选取到的惩罚对象,通过对惩罚对象进行一系列的惩罚,增添游戏的刺激性以及乐趣。在本论文中主要研究的是数字爆炸游戏,此游戏是通过生成一个规定数字范围的随机数后,游戏玩家对该数字的估测进行的,通过玩家的估测逐步缩小数字范围,直到有玩家说中该随机数为止,则数字达到爆炸条件,该玩家成为惩罚对象。该游戏具有很强的刺激性和娱乐性,当数字范围缩小到一定值后,会引起游戏成员的紧张心理,而对于惩罚的内容也是一个值得关注的方面。对于游戏惩罚,比较常见的是真心话大冒险,玩家可以选择说“真心话”或者做“大冒险”之一,“真心话”则是对其他游戏成员的各种难堪的问题进行真实地回答;“大冒险”则是完成一件由游戏成员规定的事情。2游戏平台总体设计21游戏具体流程实现数字爆炸游戏,一般以3个人以上进行游戏,在游戏过程中,首先设定角色,由一个人作为主持人,通过手机或者纸等工具设定一个数值(一般设定范围为1100),然后轮流其他每一个游戏成员必须在该数字范围内选择一个数值,如果该数值与设定的数值相吻合,则该数值达到爆炸要求,游戏结束,惩罚对象已经生成;否则根据新的数值重新设定数字范围假如设定的数值是50,初始数值范围是1100,第一位游戏玩家选取的数值是40,数字不吻合,重新设定数字范围,继续游戏,新的数字范围为40100,由下一个玩家在此范围内选取一个数值。以此继续缩小数字范围,直至有人选择的数字与设定的数值相吻合为止。在该游戏中有几个缺点需要克服,第一,因为需要有人担任主持人职位,因此无法投身到具体游戏当中,这便给游戏团体带来了很严重的问题,具体由谁担任主持人,无法公正地进行选择;第二,因为设定的爆炸数字是由人为进行设定的,因此含有主观性,设定的人可能会根据自己平时喜欢的数字进行设定,因此平时熟知其习惯的游戏玩家会有很大的优势,造成了游戏的不公平性;第三,在游戏过程中,主持人很容易报错数字范围而给游戏带来一些不必要的影响,甚至有可能在游戏过程中一不小心将设定的数值说出,造成游戏的失败我们可以很清楚地了解到,由人为地进行游戏控制会造成许许多多问题。本论文则设计一款游戏作品,代替主持人的位置,使得每个人都能够投入到游戏当中,而且避免了许多认为因素的影响,给我们聚会游戏“数字爆炸”带来极大的方便,增添乐趣。在游戏平台中,设定的初始数值范围是0100,在游戏开始之后,会首先随机生成一个数值,并通过显示屏以及语音提示对用户进行数值范围的提醒,游戏用户通过矩阵键盘输入选择的数值。通过单片机进行数据比对,当用户选择的数字与随机生成的数值相吻合时,数字达到爆炸条件,则通过显示屏以及语音提示数字已经爆炸,此时该轮戏结束,开始下一轮游戏。如果用户选择的数字与生成的随机数值不吻合时,则游戏平台进行数字范围更新,确定新的数字范围后,通过显示屏以及语音通知游戏用户新的数字范围,继续进行游戏,直到数字达到爆炸条件。22游戏模块设计在游戏平台的设计中,将总体设计分成4个模块设计,分别为单片机控制主模块、显示电路模块、键盘输入模块、语音提示模块。221单片机控制主模块单片机是一种集成电路芯片,是采用超大规模集成电路技术把具有数据处理能力的中央处理器CPU随机存储器RAM、只读存储器ROM、多种I/O口和中断系统、定时器/计时器等功能(可能还包括显示驱动电路、脉宽调制电路、模拟多路转换器、A/D转换器等电路)集成到一块硅片上构成的一个小而完善的微型计算机系统。单片机是嵌入式系统中重要而且发展迅速的组成部分,单片机接上振荡元件(振荡源)、复位电路和接口电路,载入软件之后,可以后称单片机应用系统。单片机具备许多实际应用上的优点体积小、灵活性强、可靠性高、用途广、价格低等不仅如此,单片机还具备许多特点(1)突出控制功能,单片机设计的依据是对象体系的控制要求,其结构、功能和指令系统都突出了控制功能,因此对外信息能够及时采集,对控制对象能够实时进行控制;(2)ROM和RAM分开,ROM用来固化调试好的程序、常数、数据表格等,RAM只用来存放运行中的临时数据、变量等,ROM和RAM分开,可使得系统运行可靠,即使掉电,也能确保程序、常数、数据表格等的安全;(3)资源易于扩展,单片机具有标语扩展的结构和控制引脚,如果单片机本身ROM、RAM、定时器或者中断源等资源不够时,可以进行资源扩展。在“数字爆炸”游戏设计中,以单片机为主要控制模块,通过单片机的控制作用,使得各个相应的模块能够有序地进行工作,达到游戏平台的作用效果。222显示电路模块在显示电路模块,我们使用的主要显示元件是TFTLCD。TFTLCD即薄膜晶体管LCDTHINFILMTRANSISTOR,是有源矩阵类型液晶显示器AMLCD中的一种。TFT的显示采用“背透式”照射方式,这样的作法是在液晶的背部设置特殊光管,光源照射时通过下偏光板向上透出。由于上下夹层的电极改成FET电极和共通电极,在FET电极导通时,液晶分子的表现也会发生改变,可以通过遮光和透光来达到显示的目的,响应时间大大提高到80MS左右。显示电路模块是游戏平台将信息输出的主要方式,游戏用户通过显示电路模块就能够很轻易地获知当前游戏信息,这是游戏用户实现与游戏平台信息交互的基础。223键盘输入模块键盘输入模块是在本游戏作品中游戏用户给游戏平台提供外部数据的唯一方法。在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,称为矩阵键盘。在矩阵式键盘中,每条水平线和垂直线在交叉处不直接连通,而是通过一个按键加以连接。这样,相比于直接将端口用于键盘输入,矩阵键盘一个端口的按键数量多出了许多,而且线数越多,矩阵键盘的作用效果越明显。224语音提示模块为了给予用户更加优质的游戏体验,在显示电路模块的基础上,添加了语音提示模块,使得用户在游戏过程中不用将注意力一直集中在显示屏幕上,通过语音功能就能够获取当前游戏信息,从而为游戏提供更好的效果。在语音提示模块添加之后,显示电路模块则起到另外一个作用,当游戏用户在听不清语音提示信息、或者没注意听到语音信息的时候,则能够通过显示电路模块获取当前游戏信息。3游戏平台硬件设计31设计概述与要求游戏平台主要分为四个模块的设计,各个模块相互独立,但要有机的接合在一起,通过各个元器件端口的相互连接,信息的输入输出等进行信息互通,并与游戏用户进行信息交互,用户通过显示电路模块以及语音提示模块获取游戏平台信息,使用键盘输入模块给游戏平台提供外部数据,而整个游戏平台的灵魂所在则是其单片机控制主模块,进行游戏过程中最重要的数据处理匹配部分,并控制其他模块的具体实现。因此在游戏设计过程中,必须十分重视单片机控制主模块的设计,以下将对游戏平台设计过程中几个重要部分进行具体介绍。32基于STC89C52的最小系统硬件设计321STC89C52单片机简介STC89C52是STC公司生产的一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程FLASH存储器。STC89C52使用经典的MCS51内核,但做了很多的改进使得芯片具有传统51单片机不具备的功能。在单芯片上,拥有灵巧的8位CPU和在系统可编程FLASH,使得STC89C52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案。MCS51系列单片机是目前国内应用最广泛的单片机之一。随着基于MCS51系列单片机的嵌入式实时操作系统的出现与推广,在很长一段时间内,MCS51系列单片机仍将占据嵌入式系统产品中的中、低端产品市场。由于STC89C52具备上述多种优点,以及其在国内的广泛,因此在本作品设计中使用STC89C52作为控制器件。STC89C52具有以下标准功能8K字节FLASH,512字节RAM,32位I/O口线,看门狗定时器,内置2KBEEPROM,MAX810复位电路,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口。另外STC89C52可降至0HZ静态逻辑操作,支持2种软件,可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作。掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止。单片机最高运作频率35MHZ,6T/12T可以进行选则。单片机STC89C52各个引脚定义如图31所示。322复位电路为确保单片机电路稳定可靠工作,复位电路是必不可少的一部分。如果系统在通电时得不到有效的复位,则程序计数器PC将得不到一个合适的初值,因此,单片机可能会从一个未被定义的位置开始执行程序。复位操作完成单片机内电路的初始化,使单片机从一种确定的状态开始运行。当保持STC89C52单片机的RST引脚高电平10MS以上时,单片机就完成了复位电路操作。需要注意的是,当复位端RST持续高电平的时间过长,单片机就会处于循环复位状态,这样,单片机就无法执行程序。因此,要求单片机复位后能够脱离复位状态。本系统的复位电路采用上电开关复位电路。上电复位的工作过程是在加电时,复位电路通过电容加给RST端一个短暂的高电平信号,此高电平信号随着VCC对电容的充电过程而逐渐回落,即RST端的高电平持续时间取决于电容的充电时间。为了保证系统能够可靠地复位,RST端的高电平信号必须维持足够长的时间。上电时,VCC的上升时间约为10MS,而振荡器的起振时间则取决于振荡频率。当单片机已经在运行时,按下复位键也能使RST持续一段时间的高电平,从而实现上电开关复位的功能。本设计系统的复位电路见图32所示。图32复位电路图323时钟电路单片机内有时钟电路(时钟发生器),与振荡器共同产生单片机工作所需要的时钟信号,单片机在时钟信号的控制下,按一定的时序进行工作。振荡器可由单片机内震荡电路外接振荡元件实现,构成内部时钟方式,也可以是外振荡源,直接接入外部时钟信号,构成外部时钟方式。在本设计中,采用内部时钟方式。片内高增益反相放大器通过XTAL1、XTAL2外接作为反馈元件的晶体(呈感性)与电容组成的并联谐振回路构成一个自激振荡,向内部时钟提供振荡时钟。振荡器的频率主要取决于晶体的振荡频率,一般晶体在图31引脚定义图1212MHZ之间任选,本设计中由于要进行串口通信,选110592MHZ的晶振;电容器C1、C2起稳定振荡频率,快速起振作用,通常取30PF左右。本设计系统的时钟电路如图33所示。图33时钟电路图综合上述设计,则单片机控制主模块的硬件设计电路图包含复位电路、时钟电路、单片机各端口连接线路、上拉电阻等。而单片机控制主模块电路图如图34所示。图34单片机控制主模块电路图33显示电路模块设计331TFTLCD模块THINFILMTRANSISTOR薄膜场效应晶体管,是指液晶显示器上的每一液晶象素点都是由集成在其后的薄膜晶体管来驱动。从而可以做到高速度高亮度高对比度显示屏幕信息。TFTLCD显示基本原理显示屏由许多可以发出任意颜色的光线的像素组成,只要控制各个像素显示相应的颜色就能达到目的了。TFTTHINFILMTRANSISTORLCD即薄膜晶体管LCD,是有源矩阵类型液晶显示器AMLCD中的一种。TFT的显示采用“背透式”照射方式。332TFTLCD与单片机连接电路TFTLCD主要包含有以下接口(1)BL_K(LED1的阴极);(2)BL_ALED电源电压,LED的阳极(3)GND(接地)(4)VDD(供电电压2533V)(5)NC不接(6)NC不接(7)/CS低电平有效低电平片选高电平不片选(8)/RESET复位(9)RS指令/数据选择(10)/WR允许读写低电平写高电平读(11)/RD允许读(12)D7数据线接口7(13)D6数据线接口6(14)D5数据线接口5(15)D4数据线接口4(16)D3数据线接口3(17)D2数据线接口2(18)D1数据线接口1(19)D0数据线接口0(20)GND接地通过TFTLCD各个端口与单片机的对应端口相连接,实现单片机控制主模块与显示电路模块的有机结合,从而显示电路模块在单片机的控制下,为游戏用户提供必要的游戏信息,成为人机交互界面中游戏平台的信息输出端口。显示电路模块的各端口与单片机的电路连接图如图35所示。图35显示电路模块电路图34键盘输入模块341矩阵键盘在键盘中按键数量较多时,为了减少I/O口的占用,通常将按键排列成矩阵形式,称为矩阵键盘。矩阵键盘的工作原理按键设置在行、列线路交点上,行、列线路分别连接到按键开关的两端。行线通过上拉电阻接到5V电源上。无按键按下时,行线处于高电平的状态,而当有按键按下时,则行线电平与此行线相连的列电平决定。行列扫描法原理(1)使行线为编程的输入线,列线是输出线,拉低所有的列线路点平,判断行线的变化,如果有按键按下,按键按下的对应行线被拉低,否则所有的行线都为高电平。(2)在第一步判断有键按下后,延时10MS消除机械抖动,再次读取行值,如果此行线还处于低电平状态则进入下一步,否则返回第一步重新判断。(3)开始扫描按键位置,采用逐行扫描,每间隔1MS的时间,分别拉低第一列,第二列,第三列,第四列,无论拉低哪一列其他三列都为高电平,读取行值找到按键的位置,分别把行值和列值储存在寄存器里。(4)从寄存器中找到行值和列值并把其合并,得到按键值,对此按键值进行编码,按照从第一行第一个一直到最后一行最后一个按键逐行进行编码,在提取按键值时,对编码值进行译码即可。342矩阵键盘电路图在本游戏设计中使用44矩阵键盘,通过JP4与单片机控制主模块进行连接,游戏用户通过矩阵键盘给游戏平台的单片机控制主模块提供外部数据,即输入游戏用户选择的数值,矩阵键盘输入模块是人机交互界面中游戏平台的信息输入端口。矩阵键盘的电路连接图如图36所示图36矩阵键盘电路图35语音提示模块351SYN6288语音芯片SYN6288中文语音合成芯片是一款性价比高,效果自然的中高端语音合成芯片。芯片具有文本智能分析处理功能对常见的数值、电话号码、时间日期、度量衡符号等格式的文本芯片能够根据内置的文本匹配规则进行正确的识别和处理。SYN6288使用全双工异步串行通信接口,实现与单片机的数据传输。支持多种格式的文本,具有清晰、自然、准确的中文语音合成效果,每次合成的文本量最多可达200字节,满足该作品设计需求。其封装形式如图37所示。图37SYN6288封装形式352系统构成框图单片机通过异步串行接口向SYN6288A语音模块发送控制命令和转换文本,当SYN6288A语音模块接收到转换文本后,通过特定的编码格式合成为语音信号并通过扬声器播放。在本设计中,单片机通过命令帧的格式向SYN6288发送文本,SYN6288只需要检测带合成的文本,就能够将文本信息转换成语音信号,控制起来方便方便简单。SYN6288语音模块系统图如图38所示。图38SYN6288语音系统构成框图36电源稳压模块从系统稳定性等方面考虑,为了在输入电压、负载、环境温度、电路参数等发生变化时仍能保持输出电压恒定,在本游戏作品设计中还设计了电源稳压电路,用于提供稳定的直流电源。具体电路设计如图39所示。图39电源稳压电路4游戏平台软件设计41软件总体设计和开发平台游戏软件设计主要完成单片机控制主模块的功能,实现单片机控制主模块、显示电路模块、键盘输入模块、语音提示模块4个模块的有机结合。游戏开始之后,首先由软件随机生成一个数值,控制显示电路模块显示数字范围提示信息,并控制语音提示模块给游戏用户播放语音提示信息,用户通过键盘输入模块输入选择数值,通过编译码功能,单片机读取用户输入数值,通过软件功能进行数据匹配,并分析出下一个步骤,即进行数字范围更新或者进行数字爆炸提示。游戏软件设计流程如图41所示。游戏开始生成随机数值X显示模块、语音模块显示/播放提示信息键盘输入模块用户输入选择数字YXY数字爆炸显示/播放爆炸信息游戏结束进入下一轮游戏更新数字范围YN图41游戏流程图游戏软件采用C语言编写,使用KEIL4平台开发,如图42。KEIL软件具有许多特点,操作界面友好,集编译、编辑、仿真于一体,支持汇编语言和C语言的程序设计。C语言程序的一般开发操作步骤为建立一个新项目PROJECT保存项目选择项目单片机型号创建C文件将C文件加入项目编辑C语言源程序设置输出文件格式编译链接C语言源程序运行程序。通过反复的编译和DEBUG,最终得到可运行的C语言程序,将该程序固化在单片机上即可。42数字范围更新当游戏用户选择的数字与随机生成的数值吻合时,直接在显示电路模块以及语音提示模块输出提示信息即可;而当数据不吻合时,则要根据原先的数字范围、用户输入的数字以及随机生成的数值,生成一个新的数字范围。假设某一时刻游戏原先的数字范围为MIN,MAX,设定的随机数值为RANDOM,用户选择的数字为DATA,其中DATA和RANDOM都在数字范围MIN,MAX内。当DATARANDOM时,直接在显示电路模块以及语音提示模块输出提示信息。当DATARANDOM时,此时进行范围判定如果DATARANDOM,则新的数字范围为MIN,DATA;如果DATARANDOMMINDATAMAXDATA更新数字范围MIN,MAX图43数字范围更新流程图43模块软件设计对于游戏平台其他三个模块,在单片机控制主模块的程序控制下进行工作,则在单片机对应软件设计中要对其余三个模块进行编程。其中包括矩阵键盘各个键位的设定,即设定每个键位对应的信息(1、2、9、0);显示电路模块的显示信息,由单片机控制每个中文提示信息对应的液晶显示点的亮和暗,从而完成提示工作;语音提示功能的播放,由单片机输出对应的文本信息,通过文本合成得到语音信息,再进行语音播放,软件设计主要完成其文本信息的输出编排工作。对于各个模块的程序设计源程序见附录。游戏开始生成随机数值X显示模块、语音模块显示/播放提示信息键盘输入模块用户输入选择数字YXY数字爆炸显示/播放爆炸信息游戏结束进入下一轮游戏更新数字范围YN游戏用户使用键盘输入模块输入选择数字DATA设定的随机数为RANDOM数字范围为MIN,MAXDATARANDOMMINDATAMAXDATA更新数字范围MIN,MAXDATARANDOM数字爆炸游戏结束YYNN图44游戏流程图5结论社会的不断进步和经济的快速增长,其优点缺点都显得十分的突兀。现代城市人的幸福感不断地减少,呼吁着进行社会工作以及精神减负。因此,通过适当的游戏活动改善这种生活状态显得尤为重要。在本论文中设计的一款游戏作品,为人们在休闲娱乐时间提供娱乐工具(大多用于朋友亲人聚会时间)。本设计以STC89C52单片机为基础,带有按键及显示屏的游戏平台,基于C语言开发游戏程序,给人们日常游戏(“数字爆炸”游戏)提供方便,改善了游戏过程中的几个缺陷,使得人们在进行该游戏时能够有更优质的游戏体验。该设计成本较低、携带方便、功能完善,因此相信会有很大的作用空间。实验得到结果为一个完整的游戏作品。开启电源之后,在液晶显示屏中提示数字范围,按下数字键盘的键,系统将随机生成一个爆炸数值。接下来游戏玩家开始进行游戏,玩家在显示屏提示的数字范围内选择一个数值,通过矩阵键盘进行输入,并按下D键进行确认,游戏作品通过玩家输入的数字进行判别,更新数字范围或者提示数字已经爆炸。游戏作品完整,过程流畅,语音提示正确,可见实验已经成功。但是,由于本人知识水平的限制,时间和精力也有限,本作品也有一些缺陷,需要在今后进一步完善。主要需要进行改善的有以下几个方面(1)游戏平台外观问题,由于设计只注重作品的核心功能问题,对于其外观方面没有进行设计,而对于一款游戏作品而言,其外观设计是非常重要的,因此在外观模型方面需要进行改善;(2)游戏平台语音效果方面略显粗糙,由于语音模块限制,不能增加过程音乐和与游戏相响应的爆炸声音,在这方面需要对各种语音功能模块进行进一步的探索和研究。(3)游戏平台不够稳定,在游戏过程中可能会出现一些问题,使得游戏失败,在这方面需要对该游戏平台进行进一步调试以及改善。对该游戏平台进行进一步改善之后,相信该作品能够得到进一步的应用。致谢转眼间,大学四年时间已悄然流逝。四年以来在学校中,我认真学习本专业知识,汲取新知识,不断向新的未知领域探索,在各个方面也不断进行自我完善,使得自我素质有了很大的提升。在此向大学四年来对我进行指导的老师表示感谢,在课程学习上,老师们孜孜不倦地对我进行指导,对于学习上的问题总能给于解答,对于我个人的知识学习起到了极大的推动作用。在此,更要特别感谢本论文的指导老师周玲副教授对我的悉心指导。在我本人毕业论文选题时,导师给了我许多的帮助和指导,让我明确自己的方向。在论文撰写过程中出现的许多专业性问题,老师也能够给予我指导,让我接触自己的迷惑。对于论文修改方面的许多问题,能够给我许多针对性的建议,让我清晰地看出论文中出现的问题。随着论文的顺利完成,在此要再一次感谢周玲老师对我的指导。在本毕业作品的设计过程以及论文撰写的过程中,我也得到了许多同学以及朋友的帮助。对于我不懂的专业知识,对我进行指导,让我能够快速地掌握该知识点,从而能顺利完成该作品设计,以及该论文的撰写。因此,在此要向对我有所帮助的同学以及朋友表示衷心的感谢。参考文献1白延敏51单片机典型系统开发实例精讲M北京电子工业出版社,20092于永,戴佳,常江51单片机C语言常用模块与综合系统设计实例精讲M北京电子工业出版社,20073戢卫平,胡耀辉,朱朝华,叶祥,杨帆单片机系统开发实例经典M北京冶金工业出版社,20064高文焕,刘润生,电子线路基础M,北京高等教育出版社,19975王世昌,电子线路辅导和题选M,上海科学技术文献出版社,19996王远,模拟电子技术基础学习指导书M,清华大学出版社,19987邱关源,电路(上,下册)M,第四版,高等教育出版社。8杨文龙,单片机原理及应用M,西安电子科技大学出版社,20059杨将新,李玉华,单片机程序设计及应用,电子工业大学出版社,200610吴金戌,沈庆阳,郭庭吉,单片机实践与应用,清华大学出版社,200211孙涵芳,徐爱卿,单片机原理及应用,北京航空航天大学出版社,199812DONALDANEAMENELECTRONICCIRCUITANALYSISANDDESIGNM北京清华大学出版社,200213AUTHORHANKZUMBAHLENLINEARCIRCUITDESIGNHANDBOOKMPUBLISHERNEWNES,2008附录一单片机STC89C52主程序INCLUDEINCLUDEINCLUDEINCLUDE“DELAYH“INCLUDE“LCDH“INCLUDE“KEYBOARDH“INCLUDE/包含RAND随机函数的头文件DEFINEUCHARUNSIGNEDCHARDEFINEUINTUNSIGNEDINTUCHARKEY,KEY_NUM2,MAXA3,MINA2UCHARFLAG,TSBITTTS_BUSYP20/检测SYN6288模块工作状态DEFINEHEAD_LEN5/数据包头的长度DEFINELEN_OFFSET2/长度字节的偏移量(本例中长度不超过255字节,因此只使用1字节长度)DEFINEBKM_OFFSET4/背景音乐命令偏移DEFINEBKM_MAX15/背景音乐数量/数据包头(0XFD2字节长度1字节命令字1字节命令参数CODEUCHARHEADHEAD_LEN0XFD,0X00,0X00,0X01,0X00UCHARNBKM0X00CODECHARWELCOME“X1游戏准备开始“DEFINEMSG_NUM13/消息数,根据需要自行修改CODEUCHARMSGMSG_NUM/以下内容请自行修改“到“,“爆炸了“,“请输入一个值吧“UCHARTEXT_OUT“灯“UCHARTEXT10“范围是“UCHARNUMBUF10“到“/功能函数/延时VOIDDELAY1MSUINTNUCHARI112WHILENWHILEI/串口初始化VOIDUART_INITBAUDVOIDSCON0XD8/晶振为11059MHZ时,设定串口波特率为9600BIT/S,方式3PCON0X00TH10XFDTR11/串口发送数据VOIDSENDCHARUCHARNSBUFNWHILETI0/发送数据TI0/背景音乐(参数为0表示关闭背景音乐)VOIDBKMUSICUCHARNUMNUMBKM_MAX1NBKMNUM/发声程序VOIDSPEECHUCHARBUFUCHARI0/循环计数变量UCHARXOR0X00/校验码初始化UCHARCH0X00UCHARLEN0X00WHILEBUFLEN/发送数据包头(0XFD2字节长度1字节命令字1字节命令参数FORI0IMAX|NUMRANDOMMAXNUMIFNUMINCLUDE“LCDH“INCLUDE“CHARH“INCLUDE“CHINESEH“UINTCOLORS0XF800,/红0X07E0,/绿0X001F,/蓝0XFFE0,/黄0X0000,/黑0X07FF,/浅蓝0XF81F,/粉红0XFFFF/白/延时子函数/VOIDDELAY_MSUINTMSUNSIGNEDCHARKWHILEMSFORK0K8LCD_WR1LCD_CS1/写寄存器子函数/VOIDREG_WRITEUINTREG,UINTVALUELCD_WRITETYPE_LCD_COMMAND,REGLCD_WRITETYPE_LCD_DATA,VALUE/设置显示窗口子函数/VOIDLCD_SETRAMADDRUINTXSTART,UINTXEND,UINTYSTART,UINTYENDUINTVERPOS,HORPOS,STARTADDRHORPOSUINTXSTART|XEND0NUMLCD_WIRTE_DATA160XFFFFREG_WRITE0X0005,0X0008/VCO_MODEREG_WRITE0X0007,0X007F/VCOMHT_CTRLREG_WRITE0X0008,0X0017/VCOMLT_CTRLREG_WRITE0X0009,0X0000/WRITESRAMWINDOWSTARTXPOINTREG_WRITE0X0010,0X0000/WRITESRAMWINDOWSTARTYPOINTREG_WRITE0X0011,0X0083/WRITESRAMWINDOWENDXPOINTREG_WRITE0X0012,0X009F/WRITESRAMWINDOWENDYPOINTREG_WRITE0X0017,0X0000/SRAMCONTRLREG_WRITE0X0018,0X0000/SRAMXPOSITIONREG_WRITE0X0019,0X0000/SRAMYPOSITIONREG_WRITE0X0006,0X00C5/DAC_OP_CTRL2DELAY_MS10/延时/清屏子函数/VOIDLCD_CLEARUCHARNUINTNUMLCD_SETRAMADDR0,127,0,159FORNUM20480NUM0NUM/160128204
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论