基于单片机的贪吃蛇游戏设计学士学位论文.docx
基于单片机的贪吃蛇游戏设计学生姓名:学生学号:院(系):电气信息工程学院年级专业:指导教师:二。一五年五月毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。作者签名:B期:指导教师签名:H期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,BP:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。作者签名:B期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。本人完全意识到本声明的法律后果由本人承担。作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。涉密论文按学校规定处理。作者签名:日期:年月日导师签名:日期:年月日注意事项1.设计(论文)的内容包括:D封面(按教务处制定的标准封面格式制作)2)原创性声明3)中文摘要(300字左右)、关键词4)外文摘要、关键词5)目次页(附件不统一编入)6)论文主体部分:引言(或绪论)、正文、结论7)参考文献8)致谢9)附录(对论文支持必要时)2 .论文字数要求:理工类设计(论文)正文字数不少于1万字(不包括图纸、程序清单等),文科类论文正文字数不少于1.2万字。3 .附件包括:任务书、开题报告、外文译文、译文原文(复印件)。4 .文字、图表要求: )文字通顺,语言流畅,书写字迹工整,打印字体及大小符合要求,无错别字,不准请他人代写2)工程设计类题目的图纸,要求部分用尺规绘制,部分用计算机绘制,所有图纸应符合国家技术标准规范。图表整洁,布局合理,文字注释必须使用工程字书写,不准用徒手画3)毕业论文须用A4单面打印,论文50页以上的双面打印4)图表应绘制于无格子的页面上5)软件工程类课题应有程序清单,并提供电子文档 .装订顺序1)设计(论文)2)附件:按照任务书、开题报告、外文译文、译文原文(复印件)次序装指导教师评阅书指导教师评价:一、撰写(设计)过程1、学生在论文(设计)过程中的治学态度、工作精神口优口良中口及格口不及格2、学生掌握专业知识、技能的扎实程度口优良中及格不及格3、学生综合运用所学知识和专业技能分析和解决问题的能力口优口良中口及格口不及格4、研究方法的科学性;技术线路的可行性;设计方案的合理性口优良中及格不及格5、完成毕业论文(设计)期间的出勤情况口优口良中口及格口不及格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范?口优口良中口及格口不及格2、是否完成指定的论文(设计)任务(包括装订及附件)?口优口良中口及格口不及格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义口优口良中口及格口不及格2、论文的观念是否有新意?设计是否有创意?口优良中及格不及格3、论文(设计说明书)所体现的整体水平 优口良中及格口不及格建议成绩:F优日良一于中口及格不及格(在所选等级前的口内画“J”)指导教师:(签名)单位:(盖章)年月日评阅教师评价:一、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范? 优良中及格不及格2、是否完成指定的论文(设计)任务(包括装订及附件)? 优良中及格不及格二、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优良中及格不及格2、论文的观念是否有新意?设计是否有创意? 优良中及格不及格3、论文(设计说明书)所体现的整体水平优良中及格不及格建议成绩:口优良中及格不及格(在所选等级前的内画“)评阅教师:(签名)单位:(盖章)年月日教研室(或答辩小组)及教学系意见教研室(或答辩小组)评价:一、答辩过程1、毕业论文(设计)的基本要点和见解的叙述情况优口良中口及格口不及格2、对答辩问题的反应、理解、表达情况3、优良中学生答辩过程中的精神状态及格不及格优良中及格不及格二、论文(设计)质量1、论文(设计)的整体结构是否符合撰写规范?优口良中口及格口不及格2、是否完成指定的论文(设计)任务(包括装订及附件)?优口良中口及格口不及格三、论文(设计)水平1、论文(设计)的理论意义或对解决实际问题的指导意义 优良中及格不及格2、论文的观念是否有新意?设计是否有创意? 优良中及格不及格3、论文(设计说明书)所体现的整体水平 优良中及格不及格评定成绩:优口良中口及格不及格教研室主任(或答辩小组组长):(签名)年月日教学系意见:系主任:(签名)年月日摘要在21世纪的今天,人们的生活开始变得更加丰富多彩。在繁忙的工作之余,娱乐成为人们生活不可或缺的一份子,而游戏作为近年来逐渐兴起的一种娱乐方式,已经越来越受到人们的青睐。在工作学习之余,通过玩游戏来放松、调节紧张的学习工作压力是不错的选择;然而大型的网络游戏玩起来比较耗费时间,且不能随时随地的玩。那么如果这时候拥有一款简单易携带,并且能够缓解压力的小游戏将是个不错的选择,所以,我就设计了这样一款简单易携带的经典小游戏贪吃蛇。具体实现上,硬件系统平台采用STC89C52R单片机,搭载LCD12864显示屏,构成一个轻巧简单的游戏机系统。软件系统采用C语言编程,Protues软件设计电路并仿真,KEIL软件进行程序的调试。最终实现贪吃蛇游戏系统。本次设计的贪吃蛇游戏,实现了传统意义上的贪吃蛇游戏的特点:蛇吃掉豆子后,得分增加并且蛇身变长;分数到达一定数目进行升级以后,蛇运动速度加快。而玩家只需利用方向按钮“上t、下I、左一、右一”来改变蛇的运行方向,就能达到娱乐的目的,操作非常简单。关键词:贪吃蛇游戏,STC89C52R单片机,LCD12864,C语言ABSTRACTInthe21stcenturytoday,people'slifebecomemorecolorful,Intheoutsideofbusywork,entertainmentbecomeanintegralpartofpeople'slife,Andthegameasemerginginrecentyears,akindofentertainment,alreadymoreandmoregetthepopularofpeople,Intheoutsideofworkandstudy,throughtheplaygamestorelax,adjustthepressureoflearningisagoodchoice;Howeverlargenetworkgameplaymoretime-consuming,Andcan,tplayanywhere,anytime.Soifthistimehasasimpleiseasytocarry,andcaneasethepressureofsmallgamewillbeagoodchoice.So,Iwoulddesignsuchasimpleandeasytocarrysmallclassicgame-thesnakegame.Ontheconcreteimplementation,withSTC89C52RCSinglechipmicrocomputersystemplatform,withaLCDdisplay,constitutealightweightsimplegamesystem.SoftwareuseClanguageprogramming,useProtuessoftwareCircuitdesignandsimulation,KEILSoftwareprogramdebugging,Finallyrealizesthesnakegamesystem.Thedesignofthesnakegame,Achievedinthetraditionalsenseofthesnakegamefeatures:afterthesnaketoeatbeans,scoresandsnake-bodyvariablelength;Scoretoreachacertainnumberaftertheupgrade,thesnake'smovementspeed.Playersneedtousethedirectionkey,up,down,left,right,tochangetherunningdirectionofsnake,andcanachievethepurposeofentertainment,theoperationisverysimple.Keywords:GreedySnakeGame,STC89C52RCSinglechipmicrocomputer,LCD12864,Clanguage摘要2ABSTRACT11绪论21.1 本课题研究的背景及意义21.2 国内外研究现状、水平21.3 本课题的发展趋势11.4 本课题的研究内容和达到的要求12方案分析与选择22.1 系统方案设计22.2 显示器模块设计方案22.3 按键输入模块设计方案32.4 本课题的技术指标32.5 本课题的创新33系统硬件设计43.1 单片机的选择与其性能分析43.1.1 单片机概述43.1.2 单片机STC89C52RC的介绍43.1.3 单片机最小系统的介绍53.2 LCD12864简介63.2.1 LCDI2864概述63.2.2 LCD128*64的基本特性63.2.3 模块接口说明73.2.4 指令说明93.3 键盘电路的设计113.4 蜂鸣器电路的设计113.4.1 蜂鸣器简介113.4.2 蜂鸣器的设计124软件系统设计134.1 游戏设计思想134.2 主要模块介绍及其功能144.3 编程语言介绍154.3.1 C语言简介154.3.2 C源程序结构特点154.4 程序设计流程图165仿真设计与结果分析175.1 仿真软件的简介175.1.1 仿真软件Proteus的简介175.1.2 keihVision4编程开发工具的简介175.2 本系统的Proteus仿真设计25.2.1 仿真设计的预期目标26PCB设计26.1 PCB设计软件26.1.1 PCB原理图设计26.1.2 PCB板制作方法26.2 PCB的EMC设计16.2.1 元器件布局的基本原则16.2.2 布线设计原则16.3 印制电路板16.3.1 印制电路板的结构I6.3.2 印制电路板的种类1633印制电路板制作流程17系统调试27.1 硬件调试27.2 软件调试27.3 硬件软件联合调试27.4 调试结果2结论3参考文献4附录一:系统PCB原理图5附录二:系统仿真图2附录三:PCB图2附录四:程序主函数1附录五:原器件清单2致谢错误!未定义书签。1绪论1.1 本课题研究的背景及意义随着当今社会的发展,人们的生活节奏变得越来越快,人们开始逐渐的融入全球化的世界。人们已经不再局限于一小块天地,加班,出差己经占据了现代人生活的绝大部分。这个时候,一款简单易携带、随时随地都可以玩耍的小游戏似乎成了生活必需品,无论是上下班途中,还是闲暇的工作之余,像贪吃蛇这样的小游戏都是不错的放松选择。贪吃蛇作为一款经典的小游戏,相信绝大部分的人都玩过。因为这款游戏牢牢地抓住了大部分人的心理,虽然简单,但趣味无穷,该游戏既能让人们体会玩游戏的快感,也能满足人们强烈的满足感,对于现代高工作量,高压力的白领一族是一种很好放松的一款游戏。现代科技飞速发展,使得各大电子产品开始融入人们的生活,而微电子技术、计算机软件与应用技术的发展,加快了电子产品的发展更新速度,使得人们的日常生活变得更加丰富多彩。而单片机作为电子产品的核心部件,以其独特的构造,优良的稳定性,便宜的价格在嵌入式领域广泛运用。与以往手机上的贪吃蛇游戏不同的是:本次设计,采用单片机作为基础,LCD12864液晶显示屏作为显示器,和扬声器、按键一起搭建硬件平台,再运用C语言编写程序,实现整个贪吃蛇游戏。1.2 国内外研究现状、水平在国内,我国在1986年开始对单片机就行研究、发展。此后,单片机越来越吸引人们的关注,随着1987年10月我国正式成立了国内第一个全国性单片机学会,频繁的全国性单片机学术交流会与展示会吸引了更多的人员加入单片机开发应用的行列。我国单片机的应用也开始真正的起步了。随着单片机在我国应用的深入,单片机的普及也得到了广泛的开展,出版了各类单片机书刊。全国各地的单片机培训基地如雨后的春笋一般地涌出,各地也逐渐成立了当地的单片机分会。到了1995年,已有北京、上海、深圳、江苏和天津等20多个省、市相继建立了单片机研究分会,单片机的应用技术也日趋成熟,改变了以前应用单片机一味地追求总线外接存储器与I/O的方式(这种方式虽然使用起来比较方便,但并没有真正地发挥出单片机的“单片”特点),开始逐步接受了单片机应该姓"单''的思维模式。尤其从1991年在天津就单片机召开全国学术交流会之后,国内也逐步适应潮流,开始推广国际上流行的单片机(如摩托罗拉,NEC和飞利浦公司单片机)的应用,从而改变了Intel公司单片机一手遮天的局面。这也表明了我国的单片机应用真正得走上了正规。至今单片机在我国已经走过了19个年头,虽然时间不算长,但发展是很快的。从对单片机一无所知,到能独立设计、自行生产和批量应用,这是一个巨大的飞跃。而在国外,Motorola是世界上最大的单片机厂商,品种全,选择余地大,新产品多,在8位机方面有68HC05和升级产品68HC08,68HC05有30多个系列200多个品种,产量超过20亿片,8位增强型的单片机68HC11也有30多个类型,年产量在1亿片以上,升级的单片机产品有68HCI2,16位单片机68HCI6也拥有十多个品种.32的位单片机683xx系列也有几十个品种.近年来以PowerPC,Codfire,MCORE等作为CPU,用DSP作为辅助模块集成的单片机也纷纷推出,目前仍是单片机的首选品牌Motorola单片机特点之一是在同样的速度下所用的时钟较Intel类单片机低的多因而使得高频噪声低,抗干扰能力强,更适合用于工控领域以及恶劣环境.Motorola8位单片机过去策略是掩膜为主,最近推出OTP计划以适应单片机的发展,在32位机上,M.CORE在性能和功耗上都胜过ARM7o1.3 本课题的发展趋势虽然目前市面上拥有各式各样的游戏,但是作为比较经典的一块游戏,贪吃蛇的市场价值还是相当大的。原因在于它虽然简单,但是很具有诱惑力,能够让人爱不释手。随着的进行,游戏的速度也在不断加快,能够给人越来越刺激的感受。另外,这款游戏适合的人群范围非常广,大到70、80岁的老人,小到几岁的小孩都可以玩。这款游戏的优势在于它简单易携带,操作性强,无论是手机,还是小的游戏机,都能够很顺利的运行。而对于经常在外忙碌的人来说,花费大量时间在游戏、娱乐上几乎是不可能的,大型游戏对他们是行不通的,那么像贪吃蛇这样简单易行的小游戏恰好符合他们的需求。1.4 本课题的研究内容和达到的要求本次设计主要研究的内容是通过按键输入信息到控制器单片机,再由单片机控制后面的电路,从而使显示屏显示我们需要显示的游戏界面。需要达到的设计要求是:改变贪吃蛇运动方向的设计;贪吃蛇吃到食物后,自身的变化设计;食物随机产生设计;游戏成绩的记录设计。2方案分析与选择2.1 系统方案设计根据系统设计的任务和要求,设计框图如图2.1所示,图中控制器(AT89C52)位整个系统的核心部件,输入模块和显示模块用来实现人机交互的功能,其中,通过键盘输入将需要设置的参数和状态输入到单片机中,并且通过控制器显示到显示器上。主要硬件包括STC89C52RC单片机、时钟电路、复位电路、键盘、LQ)12864液晶显示屏、蜂鸣器。图2.1系统设计框图2.2 显示器模块设计方案由于本次设计的是贪吃蛇小游戏,所以必须要将游戏界面呈现出来,那么,具体使用那种显示器呢?以下给出了三种方案:方案一:使用七段数码管(LED)显示。虽然数码管具有亮度高、工作电压低、易于集成、驱动简单、耐冲击且性能稳定等特点,并且它可采用BCD编码显示数字,编程容易,硬件电路调试简单,但是用于显示,太消耗系统性能,而且不能显示文字等更多的提示信息,所以不宜选用。方案二:使用LCDI602:通过电压对其显示区域进行控制,通电就会显示,比较方便,LCD1602具有显示质量高、数字式接口、体积小、重量轻、成本低、功耗低等优点,但通常用于显示字母和数字,不能显示游戏界面,故不采纳。方案三:使用LCDI2864:相比起LCDI602来说,LCDI2864功能更加强大,带有汉字库,可以显示汉字和图形,而且屏幕分辨率较高,用于游戏界面显示比较好。综上三种方案,在本次系统中,我们采用LCDI2864液晶显示屏。2.3 按键输入模块设计方案在系统中,我们需要通过按键来实现改变贪吃蛇的运动方向,以及菜单项的选择。那么,键盘就是整个系统中不可缺少的一部分。具体有以下两种方窠以供选择:方案一:矩阵式键盘,这种键盘I/O口利用率高,但电路连接复杂,软件编程也比较复杂,适用于需要大量使用案件的系统。方案二:独立式键盘,这种键盘每个按键之间是相互独立的,每个按键占用一条I/O线,当按键数量较多时,I/O口利用率不高,但程序编写简单,适用于所需按键较少的场合。根据以上两种方案的描述,再结合我们的系统设计,显而易见,我们需要独立式键盘,所以,这里我们选择方案一。2.4 本课题的技术指标电源电压25.0V缓冲时间0.1s2.5 本课题的创新本次设计采用51单片机作为控制器,在传统贪吃蛇游戏的基础上,采用LCDl2864作为游戏显示界面,不仅能实现贪吃蛇游戏的接本操作,而且操作空间更大,可行性更高。3系统硬件设计3.1 单片机的选择与其性能分析3.1.1 单片机概述单片机是一种集成电路芯片,它是一种把具有数据处理能力的中央处理器CPU、随机存储器RAM、只读存储器RoM、多种I/O口和中断系统、定时器/计时器等功能集成到一块硅片上构成的一个小而完善的计算机系统。单片机也称为单片微型计算机(SingIeChiPMiCrOCOmPUter)O为了方便使用,它把组成计算机的一些主要功能部件:中央处理器(CPU)、数据存储器(RAM)、程序存储器(ROM、EPROM、E2pR0M或FLASH)、定时/计数器和各种输入/输出接口电路等都集成在一块半导体芯片上,构成了一个完整的计算机系统。与通用的计算机不同,单片机的指令功能是按照工业控制的要求设计,因此它又被称为微控制器(Microcontroller)。3.1.2 单片机STC89C52RC的介绍STC89C52RC是由STC公司生产的新一代的高速度、抗干扰强、低功耗的单片机,它能够完全兼容传统的51单片机且其容量更大,价格更加低廉,所以在实际应用中常常使用。其工作频率一般在0-40MHZ之内,相当于一般51单片机的0-80MHz,但实际的工作频率可达到48MHZ左右,用户的应用程序空间在8K字节,片上集成512字节RAM,同时该单片机无需专用的编程器和仿真器,可通过串口直接下载用户程序。STC89C52RC单片机的工作模式如下:正常工作模式:典型功耗为4mA-7mA;空闲模式:典型功耗为2mA。STC89C52RC单片机各管脚分配图如图3.1所示。T2/P1.0 匚二 T3KX/P1. 1 匚二Pl. 2 ( pi. 3 CZZ Pl. 4 I Pl. 5 CZ pi. 6 CZZ Pt. 7 CZRST CZ RXDP3. O CZ TXDP3. I ZZ 1HT0/F3. 2 匚 1NT1/P3. 3 CZ T0/P3. 4 C= T1/P3.5 匚 P3. 6 匚2 RD/P3. 7 匚Z XTAL 2 CZ XTALl 匚VSS 匚二m 二 m 403938"3635“333231302928272625”232221 )3IT4001234 567892 12345678911111 111112VCCPO. ODO PO. 1/AD1 PO. 2/AD2 PO.3/AD3 PO. 4/AD4 PO.5ZADS PO.6/AD6 PO. 7/AD7BAAWPROC PSBMP2. 7/A15 P2. 6/A14 P2. 5/A13 P2. 4/A12 P2. 3/A11 P2.2/A1O P2.1/A9P2. 0/A$图3.1STC89C52RC管脚图各引脚功能简单介绍如下:1. VCC:供电电压;2. GND:接地;3. P0口:PO口为一个8位漏级开路双向I/O口。作为输出端口,每个管脚可驱动8个HL负载,对PO口写“1”时,可以作为高阻抗输入。4. Pl:Pl口是一个内部提供上拉电阻的8位双向I/O口,Pl口的输出缓冲器能驱动(输出或者吸收电流方式)4个HL输入。5. P2口:P2口为一个内部提供上拉电阻的8位双向I/O口,P2口的输出缓冲器可驱动(输出或者吸收电流方式)4个TTL输入,当P2口写“1”时,其管脚电位被内部上拉电阻拉高,且作为输入口。作为输入口使用时,P2口的管脚电位被外部拉低,将输出电流,这是由于内部上拉的缘故。6. P3:P3口是一个带内部上拉电阻的8为双向I/O端口,其输出缓冲器可驱动(输出或者吸收电流方式)4个HL输入。7. RST:复位输入。当输入两个连续机器周期以上高电平时为有效,用来完成单片机的复位初始化操作。8. ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存低8位地址的输出脉冲。9. PSEN:外部程序存储器的选通信号。在由外部程序存储器取址期间,每个机器周期PSEN两次有效。但在访问内部数据存储器时,这两次有效的PSEN信号将不会出现;10. EA/VPP:当EA保持低电平时,访问外部ROM;加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,访问内部ROM。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP);11. XTAL1:内部时钟工作电路和反向振荡放大器的输入端;12. XTAL2:反向振荡器的输入端。3.1.3单片机最小系统的介绍单片机最小系统,或者称为单片机的最小应用系统,是指用最少的元件组成的单片机可以工作的系统。对51系列单片机来说,最小系统一般应该包括:单片机、晶振电路和复位电路。复位电路:单片机中的复位电路就好像是电脑的重启部分,当电脑在使用过程中出现死机时,按下电脑的重启按钮即可恢复。单片机在使用中也一样,当单片机系统在运行过程中受到环境干扰出现程序出错的时候,按下复位按钮即可使内部的程序自动从头开始执行。晶振电路:51单片机最小系统晶振的振荡频率直接影响单片机的处理速度,频率越大处理速度越快。在51单片机中,晶振输出的脉冲周期为脉冲周期,12个脉冲周期为机器周期,单片机工作时间的最小值即为该单片机的机器周期。单片机的最小系统如图3.2所示。3.2.1 3.2LCDl2864简介3.2.2 1.CD12864概述带中文字库的128*64是一种具有2线与3线串行以及4位/8位并行等多种接口方式,其内部包含有国家标准一级和二级简体的中文字库的点阵的图形液晶显示模块;其屏幕分辨率是128*64,内含16*16点汉字8192个,和16*8点ASCII码字符集128个。3.2.3 利用该模块较为灵活的接口方式与简单并且方便的操作指令,可以构建全中文的人机交互图形的界面。此界面可以显示8*4行16*16点阵的汉字,也可以完成图形的显示,低电压且低功耗是它的又一独特的特点。由此模块组成的液晶显示器(LCD)的模块方案,无论硬件电路结构或显示程序都要比同种类型的点阵图形液晶显示模块简洁得多,并且这个模块的价格也均低于同种类型的点阵图形液晶模块。3.2.4 1.CDI28*64的基本特性(1)低电压(VDD:+3.0+5.5V)(2)屏幕分辨率:128*64点(3)内置8192个16*16点阵汉字的字库(繁简体可任选)(4)内置16*8点阵字符128个(5) 2MHZ时钟频率(6)显示方式:半透、STN,正显(7)驱动方式:1/5BlAS,1/32DUTY(8)视角方向:6点(9)背光方式:侧部为高亮白色LED,功耗仅仅为普通LED的1/51/10(10)通讯方式:并口、串行可任选(Il)内置DC-DC转换电路,不需要外加负压(12)不需要片选信号,简化软件的设计(13)储存温度:-2OC÷60oC,工作温度:OC+55323模块接口说明表3.3.1模块接口管脚号管脚名称电平管脚功能的描述1VSSOV电源地2VCC3.0+5V电源电压3VO-对比度调整4RS(CS)HZLRS="H”,DB7DBO表示显示数据RS="L”,DB7DBO表示显示指令数据5RZW(SID)H/LR/W="H”,E="H”,DDRAM数据读取到DB7DBORW="L",E="HL”,DB7DBO的数据将会被写入IR或DR6E(SCLK)H/L使能信号7DBOH/L数据线8DBlH/L数据线9DB2H/L数据线10DB3H/L数据线11DB4H/L数据线12DB5H/L数据线13DB6H/L数据线14DB7H/L数据线15PSBH/LH:4位/8位并口方式,L:串口方式(见注释1)16NC-空脚17/RESETH/L复位端,低电平有效(见注释2)18VOUT-LCD负电压驱动19AVDD背光源正端(+5V)(见注释3)20KVSS背光源负端(见注释3)*注释1:若在实用中只使用串口通讯的模式,可将PSB接通固定低电平,也可以把模块中的“GND”和J8用焊锡焊接。 注释2:模块的内部接有上电复位电路,因此可以把该端悬空在不用经常性复位的地方。,注释3:如果背光与模块共用同一个电源的话,可以将模块上的JK、JA用焊锡短接起来。控制器接口信号的说明:表3.3.2RS,R/W的选择配合确定控制界面的4种模式RSR/W功能说明LLMPU写指令进入指令暂存器(IR)LH读出忙标志(BF)及地址记数器(AC)的状态HLMPlJ写入数据进入数据暂存器(DR)HHMPU从数据暂存器(DR)中读取数据表3.3.3E信号E状态执行动作结果高一低I/O缓冲一DR配合/W进行写指令与数据高DRI0缓冲配合R进行读指令与数据低/低高无动作 忙标志:BFBF标志提供内部的工作情况.BF=I表示模块正在进行内部的操作,此刻模块不接收外部数据和指令.当BF=O时,模块此刻为准备状态,可随时接收外部数据和指令.使用STATUSRD指令,能够将BF读到DB7总线,从而测试模块的工作状态. 字型产生ROM(CGROM)字型产生ROM(CGROM)提供8192个该触发器,可以对模块屏幕开关显示进行控制。当DFF=I时为开显示(DISPLAYON),此时DDRAM的内容将显示在屏幕上,当DFF=O时为关显示(DISPLAYOFF)O此时DFF的状态是由RST信号和指令DISPLAYON/OFF来控制的。显示数据RAM(DDRAM)模块的内部会显示数据RAM提供64*2个位元组的空间,最多可以控制4行16字(64个字)的中文字符显示,当写入显示数据RAM时,能够分别显示CGROM和CGRAM的字型;该模块能够显示三种字型,分别是半角英数字型(16*8)、CGRAM字型以及CGROM的中文字型,根据在DDRAM中写入的编码选择这三种字型,在OOOOH-0006H的编码中(其代码分别为OoO0、OOO2、OoO4、Ooo6,总共4个)将会选择CGRAM的自定义字型,在02H7FH的编码中将选择半角英数字字型,而AI以上的编码将会自动的结合下一个位元组,组成两个位元组的编码而形成中文字型的编码BIG5(A140D75F),GB(A1A0-F7FFH)0字型产生RAM(CGRAM)字型产生RAM能提供图象定义(造字)的功能,可以提供4组16*6点的自定义的图象空间,用户可以将内部没有提供的图象字型自行定义到CGRAM中,便可以和CGRc)M中的定义一样地通过DDRAM显示在屏幕上。地址计数器AC地址计数器是用来储存DDRAM/CGRAM之一的地址,它可由设定指令暂存器来改变,之后只要读取或是写入DDRAM/CGRAM的值时,地址计数器的值就会自动加一,当RS为“0”时而R/W为“1”时,地址计数器的值会被读取到DB6DBO中。光标/闪烁电路此模块提供硬体光标以及闪烁控制电路,由地址计数器AC的值来决定DDRAM中的光标和闪烁位置。3.2.4指令说明模块控制芯片提供两种控制命令,基本指令与扩充指令,具体如下:表3.4.1指令表1:(RE=O:基本指令)指令指令码功能S/W76543210清田显示将DDRAM装满20H,而且设置DDRAM的地址计数器(AC)为OOH地址归位设定DDRAM的地址计数器(AC)为z,00Hzz,然后将游标换到开始原点的位置;此指令不影响DDRAM的内容显不状态开/关D=I:整体显示ONC=I:游标ONB=I:游标位置允许反白进入点设定/D指定当数据在读取或写入的时候,设置游标运动的方向和指定显示的运动游标或显不移位控制/C/L设定游标的运动和显示的移位的控制位;此指令不影响DDRAM的内容功能设定LEDL=0l:4/8位数据RE=I:扩展指令操作RE=O:基本指令操作设定CGRAM地址C5C4C3C2ClCO设置CGRAM地址设定DDRAM地址C5C4C3C2ClCO设置DDRAM地址(地址显示)第一行:80H87H第二行:90H97H读取忙标志和地址FC6C5C4C3C2ClCO读取忙标志(BF)用来判断内部工作完成与否,并且也可以读取地址计数器(AC)的值写数据到RAM数据将数据D7DO写入内部的RAM(DDRAM/CGRAM/IRAM/GRAM)读出RAM的值数据从内部RAM读取数据D7DO(DDRAM/CGRAM/IRAM/GRAM)表3.4.2指令表2:(RE=I:扩充指令)指令指令码功能S/W76543210等待模式进入等待模式,执行其他指令都可停止等待模式卷动地址开关开启RSR=I:允许输入垂直卷动地址SR=O:允许输入IRAM和CGRAM地址反白选择10选择2行中的其中一行作位反白显示,并且可以确定反白与否。初始值RlRO=00,首次设置为反白显示,若再次设置就返回正常显示睡眠模式LSL=O:开始睡眠模式SL=I:终止睡眠模式充能定扩功设LECL=O1:4/8位数据G=l0:绘图开/关RE=I:扩展指令操作RE=O:基本指令操作设定绘图RAM地址06C5C4C3C3C2C2ClClCOCO设定绘图RAM先设定垂直地址AC6AC5-AC0再设定水平地址AC3AC2AC1AC0将以上16位地址连续写入就行备注:当ICl在接受一个指令前,微处理器必须要先确认其内部是否处在忙碌状态,即读取BF标志时,BF需为零,才能接受下一个指令;如果在输出指令前不测试BF标志,那么在前一个指与当前指令中间就必须增加一段比较长的时间,也就是等待前一个指令完全执行完成。3.3 键盘电路的设计针对此次设计的要求而言,共采用七个按键,其中一个是电源按键,另外六个是游戏控制按键,按键功能名称有“上、下、左、右、确认、退出”,玩家可以通过“上、下、左、右”按键实现游戏中