首页 基于单片机的俄罗斯方块毕业论文

基于单片机的俄罗斯方块毕业论文

举报
开通vip

基于单片机的俄罗斯方块毕业论文基于单片机的俄罗斯方块毕业论文PAGEPAGE1————————————————————————————————作者:————————————————————————————————日期:个人收集整理勿做商业用途个人收集整理勿做商业用途个人收集整理勿做商业用途基于单片机实现的俄罗斯方块游戏MCUbasedRussiablockgame摘  要本设计是通过AT89S52单片机来实现俄罗斯方块游戏的设计,使用C语言进行编程,并通过Proteus来进行仿真。本设计要实现的基本功能是:应用按键来控制方块的变换与...

基于单片机的俄罗斯方块毕业论文
基于单片机的俄罗斯方块毕业 论文 政研论文下载论文大学下载论文大学下载关于长拳的论文浙大论文封面下载 PAGEPAGE1————————————————————————————————作者:————————————————————————————————日期:个人收集整理勿做商业用途个人收集整理勿做商业用途个人收集整理勿做商业用途基于单片机实现的俄罗斯方块游戏MCUbasedRussiablockgame摘  要本设计是通过AT89S52单片机来实现俄罗斯方块游戏的设计,使用C语言进行编程,并通过Proteus来进行仿真。本设计要实现的基本功能是:应用按键来控制方块的变换与移动;消除一行并计分;消除多行额外奖励记分,方块堆满时结束游戏等俄罗斯方块的基本功能。单片机在手持娱乐设备上的应用具有非常大的潜力,它能将其带入到一个新的阶段。为了解决外部电路图,必须充分了解所用液晶的显示方法和单片机的外部接口功能,和所需要处理的逻辑关系;还要理解LCD液晶的控制原理,来通过数据端口和控制端口来实现画面在液晶上面的显示。程序则要求对外部电路了解的情况下完成自己所需要的功能,并将所要完成的功能用编程语言的形式来实现。然后通过Protues仿真实现通过外部按键来控制各种不同图形的方块来玩游戏,并且实现记录分数和通过过关数来改变方块下降的速度。最后将程序下载至AT89S52单片机并进行实际运行,实际运行表明,本设计可以实现基本的游戏功能,达到预期的目的。关键词:AT89S52;C语言;Proteus仿真;LCD液晶ABSTRACTThisdesignisachievedthroughtheAT89S52microcontrollerTetrisgamedesign,programmingusingClanguage,andcarriedoutbyproteussimulation.Thedesigntoachievethebasicfunctionsare:applicationbuttonstocontrolthebox,changeandmovement;eliminatelineandscoring;eliminatemulti-lineincentivepoints,thegameendswhentheboxfilledwithbasicfunctionssuchasTetris.MCUintheapplicationofhandheldentertainmentdeviceshavegreatpotential,itcanbebroughttoanewstage.Inordertosolvetheexternalcircuit,wemustfullyunderstandtheliquidcrystaldisplaymethodandexternalinterfaceMCUfeatures,andtheneedtoaddressthelogicalrelationship;alsounderstandthattheprincipleofLCDliquidcrystalcontroltoadataportandcontrolporttoachievetheabovetheLCDscreendisplay。个人收集整理,勿做商业用途本文为互联网收集,请勿用作商业用途Programrequiresknowledgeoftheexternalcircuitwheretheyneedtocompletethefunctionandthefunctiontobecompletedintheformofprogramminglanguageusedtoachieve。Simulationthenprotuesbuttonstocontrolanexternalboxtoplayavarietyofgraphicalgames,andachieverecordnumberofscoresandtherelationshiphadtochangethespeedofthemoduledown。Finally,theprogramdownloadedtoAT89S52MCUandtheactualoperation,theactualoperationindicatethatthisdesigncanachievebasicgamefunctions,toachievethedesiredpurpose。个人收集整理,勿做商业用途文档为个人收集整理,来源于网络KeyWords:AT89S52;Clanguage;Proteussimulation;LCDliquidcrystPAGEII目录TOC\o”1—3”\h\z\uHYPERLINK\l”_Toc263718685”1绪论PAGEREF_Toc263718685\h1HYPERLINK\l”_Toc263718686”1。1课题背景PAGEREF_Toc263718686\h1HYPERLINK\l"_Toc263718687"1.2电子游戏及其分类PAGEREF_Toc263718687\h1HYPERLINK\l”_Toc263718688”1。3电子游戏发展现状PAGEREF_Toc263718688\h2HYPERLINK\l”_Toc263718689"1。3。1电子游戏国外发展现状PAGEREF_Toc263718689\h2HYPERLINK\l”_Toc263718690”1.3。2电子游戏国内发展现状PAGEREF_Toc263718690\h3HYPERLINK\l"_Toc263718691"2整体设计 方案 气瓶 现场处置方案 .pdf气瓶 现场处置方案 .doc见习基地管理方案.doc关于群访事件的化解方案建筑工地扬尘治理专项方案下载 PAGEREF_Toc263718691\h5HYPERLINK\l"_Toc263718692"2。1系统的核心部分单片机PAGEREF_Toc263718692\h5HYPERLINK\l"_Toc263718693"2.1。1单片机的选择PAGEREF_Toc263718693\h5HYPERLINK\l”_Toc263718694"2。1.2AT89S52引脚功能描述PAGEREF_Toc263718694\h7HYPERLINK\l”_Toc263718695"2.1.3晶振特性PAGEREF_Toc263718695\h9HYPERLINK\l”_Toc263718696"2。2液晶显示模块PAGEREF_Toc263718696\h10HYPERLINK\l"_Toc263718697"2.2。1液晶显示控制驱动器HD61202的特点PAGEREF_Toc263718697\h10HYPERLINK\l”_Toc263718698"2。2。2液晶显示控制驱动器HD61202的引脚功能PAGEREF_Toc263718698\h10HYPERLINK\l"_Toc263718699”2.2。3液晶显示控制驱动器HD61202的指令系统PAGEREF_Toc263718699\h11HYPERLINK\l"_Toc263718700”2。2.4HD61202的软件设计PAGEREF_Toc263718700\h12HYPERLINK\l”_Toc263718701”2.2。5JM12864J的电路结构特点PAGEREF_Toc263718701\h15HYPERLINK\l"_Toc263718702”2。2。6JM12864J的应用PAGEREF_Toc263718702\h16HYPERLINK\l”_Toc263718703”2.2.7键盘电路PAGEREF_Toc263718703\h17HYPERLINK\l”_Toc263718704"3系统程序的设计PAGEREF_Toc263718704\h18HYPERLINK\l"_Toc263718705”3.1俄罗斯方块驱动流程图PAGEREF_Toc263718705\h18HYPERLINK\l”_Toc263718706”3。2俄罗斯方块所有绘图工作流程图PAGEREF_Toc263718706\h19HYPERLINK\l”_Toc263718707"3。3俄罗斯方块中按下键的流程图PAGEREF_Toc263718707\h20HYPERLINK\l”_Toc263718708"3.4俄罗斯方块所有绘图工作流程图PAGEREF_Toc263718708\h21HYPERLINK\l"_Toc263718709"4系统仿真PAGEREF_Toc263718709\h22HYPERLINK\l”_Toc263718710”4.1PROTUES软件介绍PAGEREF_Toc263718710\h22HYPERLINK\l”_Toc263718711"4.2Keil软件介绍PAGEREF_Toc263718711\h22HYPERLINK\l"_Toc263718712"4。3俄罗斯方块系统PROTUES仿真PAGEREF_Toc263718712\h24HYPERLINK\l”_Toc263718713”5实物的制作与调试PAGEREF_Toc263718713\h26HYPERLINK\l"_Toc263718714”5。1电路的焊接PAGEREF_Toc263718714\h26HYPERLINK\l"_Toc263718715"5。2系统性能测试与功能说明PAGEREF_Toc263718715\h27HYPERLINK\l"_Toc263718716"结论PAGEREF_Toc263718716\h28HYPERLINK\l”_Toc263718717”参考文献PAGEREF_Toc263718717\h29HYPERLINK\l"_Toc263718718"附录1:C语言程序PAGEREF_Toc263718718\h30HYPERLINK\l”_Toc263718719”附录2:电路原理图PAGEREF_Toc263718719\h59HYPERLINK\l”_Toc263718720"附录3:英文资料及中文翻译PAGEREF_Toc263718720\h60HYPERLINK\l”_Toc263718721"致谢PAGEREF_Toc263718721\h76PAGE59绪论计算机系统的发展已明显地朝三个方向发展;这三个方向就是:巨型化,单片化,网络化.以解决复杂系统计算和高速数据处理的仍然是巨型机在起作用,故而,巨型机在目前在朝高速及处理能力的方向努力.单片机在出现时,Intel公司就给其单片机取名为嵌入式微控制器(embeddedmicrocontroller).单片机的最明显的优势,就是可以嵌入到各种仪器、设备中。这一点是巨型机和网络不可能做到的。单片机在内部已集成了越来越多的部件,这些部件包括一般常用的电路,例如:定时器,比较器,A/D转换器,D/A转换器,串行通信接口,Watchdog电路,LCD控制器等.课题背景俄罗斯方块是一款风靡全球的电视游戏机和掌上游戏机游戏,作为最经典的游戏之一,它曾造成的轰动与经济价值可以说是游戏史上的一件大事。这款游戏最初是由苏联的游戏制作人AlexPajitnov制作的,它看似简单但却变化无穷,令人上瘾。相信大多数用户都还记得为它痴迷得茶不思饭不想的那个俄罗斯方块时代。虽然用单片机来设计一个简单的俄罗斯方块游戏程序似乎有点大材小用了,但这仅仅是一个单片机在嵌入式游戏方面的简单应用,正因为他的前景无可预计,所以才有这个设计,此次设计仅仅是为了举一个单片机在游戏上应用的一个简单例子,他可以很好的说明单片机功能的强大,更高的可控性和高集成度的好处,因此它可以在电子游戏方面成为一个不可计量的明日之星。2005年,以计算机技术、通信技术和软件技术为核心的信息技术取得了更加迅猛的发展,加上3C(计算机、通讯、消费电子)产业的加速融合及3G移动通信时代的逐步到来,嵌入式软件在国民经济各领域和日常生活中发挥了更加重要的作用。嵌入式软件的发展为几乎所有的电子设备注入了新的活力,各种装备与设备上嵌入式系统软件的广泛应用也大大地推动了其行业渗透性应用.嵌入式软件不仅提高了传统产品的技术含量,更成为产品增值的关键因素,在整个软件产业中占据了重要地位,并受到世界各国的广泛关注,如今已成为信息产业中最为耀眼的“明星”之一.电子游戏及其分类电子游戏,也就是运行在家用电脑、家用电子游戏机或是掌中宝游戏机及街机上的电子游戏程序.电子游戏是一种结合剧情故事、美术、音乐、动画、程序等技术于一身的互动型娱乐软件,涉及到多个行业.从电子游戏的分类来看,有着多种分类方式。传统的游戏分类是按照游戏类型,将其分为即时战略游戏、第一人称射击游戏、角色扮演游戏、策略型游戏等类别。根据游戏运行平台的不同,可将电子游戏分为游戏机游戏、单机版PC游戏、互动电视游戏、在线游戏和手机游戏。此外,韩国政府将电子游戏业分为家用游戏机游戏、单机版PC游戏、网络游戏和街机游戏四大类。考虑到中韩游戏业比较接近,论文采用韩国的分类 标准 excel标准偏差excel标准偏差函数exl标准差函数国标检验抽样标准表免费下载红头文件格式标准下载 。“网络游戏”也就是人们一般所指的“在线游戏”,是指通过互联网进行的电脑游戏,通过人与人之间的互动达到交流、娱乐和休闲的目的。在互联网(局域网)技术出现之前,电子游戏都可以归于单机版游戏,即“人机对战”游戏,或最多是双人对战游戏。而随着互联网技术的出现,通过连接游戏服务器,上百、上千、乃至上万的游戏玩家同时连线娱乐成为了现实,这就大大增加了游戏的互动性、真实性,丰富了电子游戏的内涵。从网络游戏的分类来看,目前业界还没有一个比较统一 规范 编程规范下载gsp规范下载钢格栅规范下载警徽规范下载建设厅规范下载 的分类。随着计算机设备和网络技术的发展,电子游戏在全球得到了迅猛的发展,取得了巨大的成功,已成为当今世界上不可缺少的精神粮食。电子游戏发展现状电子游戏国外发展现状电子游戏是最初产生于美国,1971年,一个还在MIT就读的学生设计了世界上第一个业务用游戏机,这个街机游戏的名字叫《电脑空间》。可以说时至今日,电子游戏仍然是外国的天下。美国至今仍是世界第一大游戏市场,它遵循的是以发行商为主的产业开发链模式,根据美国市场调查公司NPDGroup调查统计,美国2004年游戏总销售金额(包括家用、掌上型主机及软件)为99亿美元,占了全球游戏市场的45%。其中游戏软件销售的具体数字是:视频游戏软件的销售额达52亿美元(1.6亿套),PC游戏软件销售额达11亿美元(4500万套),掌机游戏销售额达10亿美元(4230万套)。2004年一共大约有2。48亿套游戏售出.据估计,美国每个家庭平均购买过2部游戏。日本近20年来疯狂赚电子游戏的钱。从上世纪60年代初的街机,到六七十年代之间的家用游戏机,再到八九十年代的掌上游戏机,日本经过30多年的耕耘,终于把电子游戏这棵“摇钱树”,培育成第一时尚娱乐产业,垄断全球业界长达10余年。对于日本来说,电玩业已是国家经济的重要支柱之一,在GDP中占有1/5的举足轻重地位。日本游戏业在最辉煌的1998年,曾经占领全球电子游戏市场硬件90%以上,软件50%以上.韩国号称世界上网络游戏产业最发达国家之一。迄今为止,国内网络游戏市场有超过60%的产品来自韩国游戏软件开发商,韩国网络游戏使国内很多游戏运营公司在游戏营销市场或股票资本市场上获得了巨大的成功。韩国游戏市场的发展不是偶然,韩国政府不仅给游戏产业以正确的定位和引导,更是将其和本国经济发展紧密地联系到一起,做了很多市场培育方面的工作.韩国政府认识到,靠重型工业来支撑全国经济的做法是片面的,于是将IT、娱乐产业视为新的经济增长点,开始大力扶持。从那时起,科技含量极高而能源消耗极低的游戏制作及相关产业担负起了“富国兴邦”的重担.由文化观光部出面组建韩国游戏支援中心,向韩国游戏产业提供从资金到技术上的多方面支援;成立游戏投资联盟,政府每年向游戏产业投入的资金多达500亿韩元,并为游戏企业提供长期的低息贷款;设立信息化基金和文化产业基金,为游戏产业服务;对指定的风险企业实行各种税制优惠政策,减少甚至免除游戏企业的税务负担;建设游戏产业基地以扶持中小游戏企业的发展;对从事游戏产业的高科技人才免除两年的兵役。在韩国,从制作到运营,一个网络游戏公司起步门槛较低,主要得益于政府实行的援助计划。此外,在有利的政策形势下,韩国出现了众多的游戏院校,一些原本不涉足此领域的大学也开设了游戏相关专业课程,以大力培养游戏专业人才,从而为游戏生产提供了基础保障。个人收集整理,勿做商业用途本文为互联网收集,请勿用作商业用途电子游戏国内发展现状与电子游戏发达的国家相比,我国在电子游戏方面还存在比较大的差距。目前,我国游戏市场正处于发展阶段,但市场上的游戏软件主要来自日本、美国、韩国等地,但由本土游戏制作人开发创作的游戏正在高速增加,国产原创的游戏即将成为游戏的主流.中国的游戏产业经过80年代初期台湾厂商的探索至90年代,开始了自己的研发、发行的历程,直至网络游戏的风行,让中国的网络游戏开始有了飞速的发展。1983年,智冠科技有限公司在中国台湾成立,为全球第一家签订授权重制中文版产品代理销售合约的公司,2000年智冠在台湾股票上市,2002年其控股的中华网龙在台湾上市。1996年底,UBISOFT上海分公司暨上海育碧电脑软件有限公司成立。同年,全球游戏软件领军企业EA在中国上海成立办事处。1997年,由尚洋公司制作的《血狮》正式上市.1997年,北京新天地互动多媒体技术有限公司成立,该公司引进了《古墓丽影III》(TombRaiderIII)、《盟军敢死队》等著名欧美游戏,并在1999年在中国率先掀起“游戏软件价格革命”,全面推行50元的价格体系,从此正版游戏价格开始贴近大众消费者。1999年,业内估算中国电脑游戏市场(正版)约1。5亿元人民币。2000年,大陆华彩软件代理发行第一款中文MMORPG《万王之王》正式推出,该游戏于1999年在台湾发行,由台湾雷爵资讯(Lager)开发。也在2000年,继《万王之王》、《石器时代》、《网络三国》在台湾上市之后,游戏桔子推出了《天堂》,游戏桔子成立于1995年,1999年以《便利店》在台湾奠定了地位.《天堂》这款由韩国著名游戏公司Ncsoft研发的网络游戏不但在本国大获成功,也在台湾再次夺冠。2001年初,北京华义在中国大陆地区正式推出了《石器时代》,华义国际股份有限公司于1993年在台北成立,2001年在台湾股票上市。《石器时代》成为大陆当时最流行的网络游戏。2001年,天人互动软件技术有限公司在北京成立。当年与SEGA结成PC游戏业务的战略合作关系,发行了《樱花大战Ⅱ》《文明Ⅲ》《无冬之夜》等经典游戏.2001年5月,“联众世界”经过3年多的迅速成长,以同时在线17万人、注册用户约1800万的规模,成为当时世界用户数量第一的在线游戏网站.2001年11月,上海盛大代理的《传奇》正式上市,这代表着中国网络游戏的第一个巅峰,同时也引发了众多的非议。2003年9月25日,《魔兽世界》被九城、新加坡电信、搜狐和英特尔联手拿下,并凭借其优秀的品质赢得了广大玩家的青睐。文档为个人收集整理,来源于网络文档为个人收集整理,来源于网络整体设计方案系统的核心部分单片机单片机的选择单片机微型计算机是微型计算机的一个重要分支,也是颇具生命力的机种.单片机微型计算机简称单片机,特别适用于控制领域,故又称为微控制器.通常,单片机由单块集成电路芯片构成,内部包含有计算机的基本功能部件:中央处理器、存储器和I/O接口电路等.因此,单片机只需要和适当的软件及外部设备相结合,便可成为一个单片机控制系统。20世纪末,电子技术获得了飞速的发展,在其推动下,现代电子产品几乎渗透了社会的各个领域,有力地推动了社会生产力的发展和社会信息化程度的提高,同时也使现代电子产品性能进一步提高,产品更新换代的节奏也越来越快.时间对人们来说总是那么宝贵,工作的忙碌性和繁杂性容易使人忘记当前的时间。忘记了要做的事情,当事情不是很重要的时候,这种遗忘无伤大雅。但是,一旦重要事情,一时的耽误可能酿成大祸.目前,单片机正朝着高性能和多品种方向发展趋势将是进一步向着CMOS化、低功耗、小体积、大容量、高性能、低价格和外围电路内装化等几个方面发展。下面是单片机的主要发展趋势。单片机应用的重要意义还在于,它从根本上改变了传统的控制系统设计思想和设计方法.从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了.这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。单片机经过3代的发展,正朝着多功能、高性能、低电压、低功耗、低价格、大存储容量、强I/O功能及较好的结构兼容性方向发展。其发展趋势不外乎以下几个方面:多功能单片机中尽可能地把所需要的存储器和I/O口都集成在一块芯片上,使得单片机可以实现更多的功能。比如A/D、PWM、PCA(可编程计数器阵列)、WDT(监视定时器-——看家狗)、高速I/O口及计数器的捕获/比较逻辑等。有的单片机针对某一个应用领域,集成了相关的控制设备,以减少应用系统的芯片数量.例如,有的芯片以51内核为核心,集成了USB控制器、SMARTCARD接口、MP3解码器、CAN或者I*I*C总线控制器等,LED、LCD或VFD显示驱动器也开始集成在8位单片机中。2.高效率和高性能为了提高执行速度和执行效率,单片机开始使用RISC、流水线和DSP的设计技术,使单片机的性能有了明显的提高,表现为:单片机的时钟频率得到提高;同样频率的单片机运行效率也有了很大的提升;由于集成度的提高,单片机的寻址能力、片内ROM(FLASH)和RAM的容量都突破了以往的数量和限制。由于系统资源和系统复杂程度的增加,开始使用高级语言(如C语言)来开发单片机的程序。使用高级语言可以降低开发难度,缩短开发周期,增强软件的可读性和可移植性,便于改进和扩充功能.3.低电压和低功耗单片机的嵌入式应用决定了低电压和低功耗的特性十分重要。由于CMOS等工艺的大量采用,很多单片机可以在更低的电压下工作(1.2V或0.9V),功耗已经降低到uA级。这些特性使得单片机系统可以在更小电源的支持下工作更长的时间。4.低价格单片机应用面广,使用数量大,带来的直接好处就是成本的降低。目前世界各大公司为了提高竞争力,在提高单片机性能的同时,十分注意降低其产品的价格。在此,我们采用型号为AT89S52的单片机。因为:HYPERLINK”http://www.zymcu。com/datasheet/atmel/at89c51.pdf”\t”_blank"AT89S52是一种低功耗、高性能CMOS8位微控制器,具有8K在系统可编程Flash存储器。使用Atmel公司高密度非易失性存储器技术制造,与工业80C51产品指令和引脚完全兼容。片上Flash允许程序存储器在系统可编程,亦适于常规编程器.在单芯片上,拥有灵巧的8位CPU和在系统可编程Flash,使得AT89S52为众多嵌入式控制应用系统提供高灵活、超有效的解决方案.与MCS—51HYPERLINK”http://baike。baidu。com/view/1012。htm”\t"_blank”单片机产品兼容、8K字节在系统可编程Flash存储器、1000次擦写周期、全静态操作:0Hz~33MH、三级加密程序存储器、32个可编程I/O口线、三个16位定时器/计数器八个中断源、全双工UART串行通道、低功耗空闲和掉电模式、掉电后中断可唤醒、看门狗定时器、双数据指针、掉电标识符。AT89S52具有以下标准功能:8K字节Flash,256字节RAM,32位I/O口线,看门狗定时器,2个数据指针,三个16位定时器/计数器,一个6向量2级中断结构,全双工串行口,片内晶振及时钟电路。另外,AT89S52可降至0Hz静态逻辑操作,支持2种软件可选择节电模式。空闲模式下,CPU停止工作,允许RAM、定时器/计数器、串口、中断继续工作.掉电保护方式下,RAM内容被保存,振荡器被冻结,单片机一切工作停止,直到下一个中断或硬件复位为止.AT89S52单片机有PDIP、PLCC、TQFP三种封装方式,在此我选用DPIP也就是双列直插封装的单片机此种封装有如下特点:1.适合PCB的穿孔安装;2。易于对PCB布线;3.操作方便;AT89S52引脚功能描述AT89S52单片机的管脚说明如图2—1所示:图2-1DIP封装AT89S52单片机引脚结构图1.VCC:电源。2.GND:接地端。3.P0口(P0。0~P0.7):P0口是一个8位漏极开路的双向I/O口.作为输出口,每位能驱动8个TTL逻辑电平。对P0端口写“1”时,引脚用作高阻抗输入。当访问外部程序和数据存储器时,P0口也被作为低8位地址/数据复用。在这种模式下,P0具有内部上拉电阻.在Flash编程时,P0口也用来接收指令字节;在程序校验时,输出指令字节。程序校验时,需要外部上拉电阻。4.P1口(P1。0~P1。7):P1口是一个具有内部上拉电阻的8位双向I/O口,P1输出缓冲器能驱动4个TTL逻辑电平。对P1端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。此外,P1。0和P1.2分别作定时器/计数器2的外部计数输入(P1。0/T2)和时器/计数器2的触发输入(P1。1/T2EX),具体如表2—1所示:在Flash编程和校验时,P1口接收低8位地址字节.表2—1P1口第二功能引脚号第二功能P1.0T2(定时器/计数器T2的外部计数输入),时钟输出P1。1T2EX(定时器/计数器T2的捕捉/重载触发信号和方向控制)P1.5MOSI(在系统编程用)P1.6MISO(在系统编程用)P1。7SCK(在系统编程用)5.P2口(P2.0~P2.7):P2口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P2端口写“1”时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL).在访问外部程序存储器或用16位地址读取外部数据存储器(例如执行MOVX@DPTR)时,P2口送出高八位地址.在这种应用中,P2口使用很强的内部上拉发送1。在使用8位地址(如MOVX@RI)访问外部数据存储器时,P2口输出P2锁存器的内容.在flash编程和校验时,P2口也接收高8位地址字节和一些控制信号.6.P3口(P3.0~P3.7):P3口是一个具有内部上拉电阻的8位双向I/O口,P2输出缓冲器能驱动4个TTL逻辑电平。对P3端口写“1"时,内部上拉电阻把端口拉高,此时可以作为输入口使用。作为输入使用时,被外部拉低的引脚由于内部电阻的原因,将输出电流(IIL)。P3口亦作为AT89S52第二功能使用,如表2-2所示:表2—2P3口第二功能引脚号第二功能P3。0RXD(串行输入)P3.1TXD(串行输出)P3.2I(外部中断0)P3。3I(外部中断0)P3。4T0(定时器0外部输入)P3.5T1(定时器1外部输入)P3。6(外部数据存储器写选通)P3。7(外部数据存储器写选通)在flash编程和校验时,P3口也接收一些控制信号。RST:复位输入.晶振工作时,RST脚持续2个机器周期高电平将使单片机复位.看门狗计时完成后,RST脚输出96个晶振周期的高电平。特殊寄存器AUXR(地址8EH)上的DISRTO位可以使此功能无效。DISRTO默认状态下,复位高电平有效。ALE/:地址锁存控制信号(ALE)是访问外部程序存储器时,锁存低8位地址的输出脉冲.在flash编程时,此引脚(PROG)也用作编程输入脉冲。在一般情况下,ALE以晶振六分之一的固定频率输出脉冲,可用来作为外部定时器或时钟使用。然而,特别强调,在每次访问外部数据存储器时,ALE脉冲将会跳过.如果需要,通过将地址为8EH的SFR的第0位置“1”,ALE操作将无效。这一位置“1”,ALE仅在执行MOVX或MOVC指令时有效。否则,ALE将被微弱拉高。这个ALE使能标志位(地址为8EH的SFR的第0位)的设置对微控制器处于外部执行模式下无效。:外部程序存储器选通信号(PSEN)是外部程序存储器选通信号。当AT89S52从外部程序存储器执行外部代码时,PSEN在每个机器周期被激活两次,而在访问外部数据存储器时,PSEN将不被激活。A/VPP:访问外部程序存储器控制信号。为使能从0000H到FFFFH的外部程序存储器读取指令,EA必须接GND。为了执行内部程序指令,EA应该接VCC。在flash编程期间,EA也接收12伏VPP电压。XTAL1:振荡器反相放大器和内部时钟发生电路的输入端。XTAL2:振荡器反相放大器的输出端。晶振特性AT89S52单片机有一个用于构成内部振荡器的反相放大器,XTAL1和XTAL2分别是放大器的输入、输出端.石英晶体和陶瓷谐振器都可以用来一起构成自激振荡器.从外部时钟源驱动器件的话,XTAL2可以不接,而从XTAL1接入,如图2-2所示。由于外部时钟信号经过二分频触发后作为外部时钟电路输入的,所以对外部时钟信号的占空比没有其它要求,最长低电平持续时间和最少高电平持续时间等还是要符合要求的.如图2—2所示:图2-2内部振荡电路连接图液晶显示模块显示器部分是由HD61202液晶显示控制驱动器和JM12864J液晶显示器组成的,下面我们对其分别进行介绍.液晶显示控制驱动器HD61202的特点HD61202液晶显示控制驱动器是一种带有驱动输出的图形液晶显示控制器,它可直接与8位微处理器相连,它可与HD61203配合对液晶屏进行行、列驱动.HD61202是一种带有列驱动输出的液晶显示控制器,它可与行驱动器HD61203配合使用,组成液晶显示驱动控制系统.1.内藏64×64=4096位显示RAM,RAM中每位数据对应LCD屏上一个点的亮、暗状态;2。HD61202是列驱动器,具有64路列驱动输出;3.HD61202读、写操作时序与68系列微处理器相符,因此它可直接与68系列微处理器接口相连;4.HD61202的占空比为1/32~1/64。液晶显示控制驱动器HD61202的引脚功能引脚CS1,CS2,CS3为芯片的片选端;引脚E为读写使能信号,它是在下降沿时数据被锁存入HD61202的;在E高电平期间,数据被读出;R/W为读写选择信号,当它为一时为读选通,为零时为写选通;DB0-DB7为数据总线RST为复位信号复位信号有效时,关闭液晶显示,使显示起始行为0,RST可跟MCU相连,由MCU控制;也可直接接VDD,使之不起作用。HD61202的引脚功能如下表2—3所示:表2-3HD61202的引脚功能引脚符号状态引脚名称功能CS1,CS2,CS3输入芯片片选端CS1和CS2低电平选通,CS3高电平选通。E输入读写使能信号在E下降沿,数据被锁存(写)入HD61202;在E高电平期间,数据被读出R/W输入读写选择信号R/W=1为读选通,R/W=0为写选通RS输入数据、指令选择信号RS=1为数据操作RS=0为写指令或读状态DB0—DB7三态数据总线RST输入复位信号复位信号有效时,关闭液晶显示,使显示起始行为0,RST可跟MCU相连,由MCU控制;也可直接接VDD,使之不起作用。液晶显示控制驱动器HD61202的指令系统HD61202的指令系统比较简单,总共只有七种。现分别介绍如下:1。显示开/关指令R/WRSDB7DB6DB5DB4DB3DB2DB1DB00000111111/0当DBO=1时,LCD显示RAM中的内容;DBO=0时,关闭显示。2.显示起始行(ROW)设置指令该指令设置了对应液晶屏最上一行的显示RAM的行号,有规律的改变显示起始行,可以使LCD实现显示滚屏的效果。R/WRSDB7DB6DB5DB4DB3DB2DB1DB00011显示起始行(0—63)3。页(PAGE)置指令R/WRSDB7DB6DB5DB4DB3DB2DB1DB00010111页号(0—7)显示RAM共64行,分8页,每页8行。4.列地址(YAddress)设置指令R/WRSDB7DB6DB5DB4DB3DB2DB1DB00001显示列地址(0-63)设置了页地址和列地址,就唯一确定了显示RAM中的一个单元,这样MCU就可以用读、写指令读出该单元中的内容或向该单元写进一个字节数据。5.读状态指令R/WRSDB7DB6DB5DB4DB3DB2DB1DB010BUSY0ON/OFFREST0000该指令用来查询HD61202的状态,各参量含义如下:BUSY: 1-内部在工作0-正常状态ON/OFF:1-显示关闭0—显示打开REST:1-复位状态0-正常状态在BUSY和REST状态时,除读状态指令外,其它指令均不对HD61202产生作用。在对HD61202操作之前要查询BUSY状态,以确定是否可以对HD61202进行操作。6。写数据指令R/WRSDB7DB6DB5DB4DB3DB2DB1DB001写数据读、写数据指令每执行完一次读、写操作,列地址就自动增一,必须注意的是,进行读操作之前,必须有一次空读操作,紧接着再读才会读出所要读的单元中的数据。7。读数据指令R/WRSDB7DB6DB5DB4DB3DB2DB1DB011读显示数据HD61202的软件设计液晶控制器HD61202一共有七条指令,从作用上可分为两类,显示状态设置指令和数据读/写操作指令。详见指令系统可查看图形液晶显示器产品有关 手册 华为质量管理手册 下载焊接手册下载团建手册下载团建手册下载ld手册下载 。显示起始行设置中L5~L0为显示起始行的地址,取值在0-3FH(1—64行)范围内。页面地址设置中P2—P0为选择的页面地址,取值范围为0-7H,代表1-8页.列地址设置中C5—C0为Y地址计数器的内容,取值在0-3FH(1-64行)范围内。显示器上128点×64点,每8点为一字节数据,都对应着显示数据RAM(在HD61202芯片内),一点对应一个bit,计算机写入或读出显示存储器的数据代表显示屏上某一点列上的垂直8点行的数据。D0代表最上一行的点数据,D1为第二行的点数据,……D7为第八行的点数据。该bit=1时该点则显示黑点出来,该bit=0时该点则消失。另外LCD指令中有-条displayON/OFF指令,displayON时显示RAM数据对应显示的画面;displayOFF则画面消失,RAM中显示数据仍存在。点阵字模文件的建立:由于MGLS12864液晶显示器没有内部字符发生器,所以在屏幕上显示的任何字符、汉字等须自己建立点阵字模库,然后均按图形方式进行显示。由于HD61202显示存储器的特性,不能将计算机内的汉字库和其它字模库提出直接使用,需要将其旋转90度后再写入。点阵字模库建立包括以下几个方面:1。建立8×16点阵常用字符、数字、符号字模库。可选用计算机BIOS中ASCII的8×16字模库,所有字符按照ASCII值从小到大升序排列。asm{MOVax,1130h/*AH=11h—功能调用。装入字库至软字库*/movbh,6/*AL=30h取点阵信息*/int10h/*BH=6取ROM8X16点阵指针(VGA)*/movax,es/*出口:ES:BP指向字库指针*/movascii_es,axmovax,bpmovascii_bp,ax};ascii_offset=ascii_bp+16*asciicode;for(j=0;j〈16;j++)buf[j]=peekb(ascii_es,ascii_offset+j);/*读16字节点阵数据*/for(m=0;m〈16;m++)/*点阵数据转换成LCD格式数据*/{if(m<8){beginbyte=7;shiftn=”7”;}else{beginbyte=”15”;shiftn="15";}for(j=0;j〈8;j++)ascii8x16[m]=(ascii8x16[m]+(buf[beginbyte—j]>〉(shiftn—m))&0x01)〈<1;}也可选用UCDOS的ASC16文件做字模库。ASC16文件的字符为8×16点阵。所有字符按照ASCII值从小到大升序排列。计算字符首地址的公式:字符首地址=字符的ASCII码值×16加字模库首地址.2。建立所用到的16×16点阵字模库。汉字字符可选用UCDOS的HZK16文件做字模库。HZK16文件的字符为16×16点阵。所有字符按照区位码从小到大升序排列。计算汉字字符首地址的公式如下:汉字首地址=((区码-1)×94+位码-1)×32.作者用C语言编写的读取UCDOS点阵字库字模程序,完成字模读取。数据重新排列,并按MCS—51汇编程序的要求写成相应格式的文本文件。p=((quma-1)*94+weima—1)*32;cclibfile="fopen"("HZK16","rb");fseek(cclibfile,(long)p,SEEK_SET);fread(buf,sizeof(unsignedchar),32,cclibfile);/*读32字节点阵数据*/for(m=0;m〈32;m++){/*点阵数据转换成LCD格式数据*/if(m<8){beginbyte=”14”;shiftn="7”;}elseif(m>=8&&m<16){beginbyte="15”;shiftn=”15”;}elseif(m>=16&&m〈24){beginbyte=”30";shiftn="23";}else{beginbyte=”31";shiftn=”31”;}for(j=0;j<8;j++)hzk16x16[m]=(hzk16x16[m]+(buf[beginbyte—2*j]〉〉(shiftn—m))&0x01)〈〈1;}3。常用图形(如产品商标等)的点阵图形的建立。对已有的图形可采用扫描仪进行扫描,然后用图形处理软件进行处理,再将BMP格式文件转换成MCS—51的汇编文件的格式.以上所有的字模数据都存放在单片机W78E58的程序存储器中,如用到的汉字、图形较多,可选用较大容量的程序存储器。通用子程序:通用子程序分左半屏、右半屏写指令代码子程序和写显示数据子程序.液晶显示驱动器HD16202内部有个忙标志寄存器,当BF=1时,表示内部操作正在运行,不能接受外部数据或指令.下面子程序中设指令代码寄存器为COMM,数据寄存器为DATA。(COMMEQU20H/*指令寄存器*/DATAEQU21H/*数据寄存器*/)1.左半屏写指令子程序WR_CMD1:MOVDPTR,#CRADR1;/*读状态字口地址*/WAIT1:MOVXA,@DPTR;/*读状态字*/JBACC。7,WAIT1;/*判忙标志BF,如BF=1忙,等待*/MOVDPTR,#CWADR1;/*写指令字口地址*/MOVA,COMM;/*取指令代码*/MOVX@DPTR,A;/*写指令代码*/RET2。左半屏写数据子程序WR_DATA1:MOVDPTR,#CRADR1;/*读状态字口地址*/WAIT11:MOVXA,@DPTR;/*读状态字*/JBACC。7,WAIT11;/*判忙标志BF,如BF=1忙,等待*/MOVDPTR,#DWADR1;/*写数据字口地址*/MOVA,DATA;/*取数据/MOVX@DPTR,A;/*写数据*/RET3.右半屏写指令子程序WR_CMD2和右半屏写数据子程序WR_DATA2的编制同左半屏子程序相同,只是对应口地址不同。JM12864J的电路结构特点JM12864J是使用HD61202及其兼容控制驱动器作为列驱动器,同时使用HD61203作为行驱动器的液晶模块。由于HD6120不与MPU发生联系,只要提供电源就能产生行驱动信号和各种同步信号,比较简单,因此这里就不作介绍了。下面主要介绍一下JM12864J的逻辑电路图。JM12864J共有两片HD61202及其兼容控制驱动器和一片HD61203,如图2-3所示:图2—3JM12864J的逻辑电路图在JM12864J中,两片HD61202的ADC均接高电平,RST也接高电平,这样在使用JM12864J时就不必再考虑这两个引脚的作用。跟HD61202(1)的相连;跟HD61202(2)的CS1相连,因此、选通组合信号为,=01选通(1),,=10选通(2)。对于JM12864J,只要供给VDD、VSS和V0即可,HD61202和HD61203所需的电源将由模块内部电路在VDD和V0、VSS的作用下产生。JM12864J的应用以下内容为以单片机89S52为例机的接口电路,控制电路为直接访问方式的接口电路.电路原理图如图2—4所示:图2-4AT89S52与液晶的接口电路根据以上电路原理图中液晶的各引脚与单片机的接法,可得本设计的液晶模块电路如图2—5所示:由图2-5可以看出:VSS接地;数字电源VDD接+5V;数据、指令选择信号RS接单片机P3.2口;读写选择信号R/W接单片机P3。1口;DB0~DB7分别接单片机的P2.0~P2。7口;芯片1、芯片2的片选分别接单片机的P3。4、P3。3口;复位端RST、背光正电源LEDA接+5V;液晶驱动电压VEE、背光负电源LEDK接地.图2-5液晶模块电路键盘电路键盘电路本设计共采用按键3个,分别与单片机的P1.0、P3。5、P3.6、P3.7口相连,分别对应旋转、左移、下、右移。系统程序的设计俄罗斯方块驱动流程图开始随机生成一个图形交给当前图形变量随机生成一个图形交给提示图形变量行满表格满消除行并把上面的行数据下移并置清行为true、当前图改变为false清所有数据绘图(清屏)NYN提示图形变量给当前图形随机生成一个图形交给提示图形变量游戏结束绘图结束YY绘图一次Y根据变化绘图(绘提示图和当前图形)N图形到底了吗图形下降一行俄罗斯方块所有绘图工作流程图开始输出分数清除刚才位置的图形当前图形改变NY绘当前图的现在位置提示图形改变真?NY绘提示图消行动作为真?NY从消行的那一行的第一列开始为空数据NY绘白色;相当于清除色彩表格中对应的色彩行+1到移动数据最后一行NY结束俄罗斯方块中按下键的流程图按下键直接把图形下降到底记下下降图形时的位置()NY消除行并把上面的行数据下移并置清行为true、当前图改变为falseY表格满行满N绘图(清屏)清所有数据游戏结束提示图形变量给当前图形绘图随机生成一个图形交给提示图形变量结束俄罗斯方块所有绘图工作流程图清除刚才位置的图形,包括清除提示图和当前图当前图形改变开始输出分数绘当前图的现在位置NY绘提示图N重绘表格Y清除所有数据并清屏N提示图形改变真?消行动作为真?Y游戏结束NY结束系统仿真Proteus软件介绍Proteus软件是来自英国Labcenterelectronics公司的EDA工具软件。Proteus软件有十多年的历史,在全球广泛使用,除了其具有和其它EDA工具一样的原理布图、PCB自动或人工布线及电路仿真的功能外,其革命性的功能是,他的电路仿真是互动的,针对微处理器的应用,还可以直接在基于原理图的虚拟原型上编程,并实现软件源码级的实时调试,如有显示及输出,还能看到运行后输入输出的效果,配合系统配置的虚拟仪器如示波器、逻辑分析仪等,不需要别的,Proteus建立了完备的电子设计开发环境!Proteus组合了高级原理布图、混合模式SPICE仿真,PCB设计以及自动布线来实现一个完整的电子设计系统.此系统受益于15年来的持续开发,被《电子世界》在其对PCB设计系统的比较文章中评为最好产品—“TheRoutetoPCBCAD”。Proteus产品系列也包含了革命性的VSM技术,用户可以对基于微控制器的设计连同所有的周围电子器件一起仿真。用户甚至可以实时采用诸如LED/LCD、键盘、RS232终端等动态外设模型来对设计进行交互仿真。其功能模块:-个易用而又功能强大的ISIS原理布图工具;Proteus混合模型SPICE仿真;ARESPCB设计。Proteus仿真器的一个扩展ProteusVSM:便于包括所有相关的器件的基于微处理器设计的协同仿真。此外,还可以结合微控制器软件使用动态的键盘,开关,按钮,LEDs甚至LCD显示CPU模型。1.支持许多通用的微控制器,如PIC,AVR,HC11以及8051;2.交互的装置模型包括:LED和LCD显示,RS232终端,通用键盘;3。强大的调试工具,包括寄存器和存储器,断点和单步模式;4.IARC-SPY和KeiluVision3等开发工具的源层调试;5.应用特殊模型的DLL界面—提供有关元件库的全部文件.Keil软件介绍KeilC51µVision2集成开发环境是KeilSoftware,Inc/KeilElektronikGmbH开发的基于80C51内核的微处理器软件开发平台,内嵌多种符合当前工业标准的开发工具,可以完成从工程建立到管理、编译、链接、目标代码的生成、软件仿真、硬件仿真等完整的开发流程尤其是C编译工具在产生代码的准确性和效率方面达到了较高的水平,而且可以附加灵活的控制选项,在开发大型项目时非常理想.KeilC51集成开发环境的主要功能有以下几点:1。µVision2forWindows:是一个集成开发环境,它将项目管理、源代码编辑和程序调试等组合在一个功能强大的环境中;2。C51国际际准化C交叉编译器:从C源代码产生可重定位的目标模块;3.A51宏汇编器:从80C51汇编源代码产生可重定位的目标模块;4.BL51链接器/定位器:组合由C51和A51产生的可重定位的目标模块,生成绝对目标模块;5。LIB51库管理器:从目标模块生成连接器可以使用的库文件;6.OH51目标文件至HEX格式的转换器,从绝对目标模块生成IntelHex文件;7。RTX—51实时操作系统:简化了复杂的实时应用软件项目的设计。这个工具套件是为专业软件开发人员设计的,但任何层次的编程人员都可以使用,并获得80C51单片机的绝大部分应用。KeilSoftware提供了一流的80C51系列开发工具软件,下面描述每个套件及其内容:(1)PK51专业开发套件:PK51专业开发套件提供了所有工具,适合专业开发人员建立和调试80C51系列微控制器的复杂嵌入式应用程序.专业开发套件可针对80C51及其所有派生系列进行配置使用;(2)DK51开发套件:DK51开发套件是PK51的精简版,它不包括RTX51Tiny实时操作系统。开发套件可针对80C51及其所以派生系列进行配置使用;(3)编译器套件:如果开发者只需要一个C编译器而不需要调试系统,则CA51编译器套件就是最好的选择。CA51编译器套件只包含µVision2IDE集成开发环境,CA51不提供µVision2调试器的功能。这个套件包括了要建立嵌入式应用的所有工具软件,可针对80C51及其所有派生系列进行配置使用;表4—1开发套件和工具对照表ComponentsPK51DK51CA51A51FR51uVision2ProjectManagement&Editor√√√√A51Assembler√√√√C51Compiler√√√BL51Liker/locator√√√√LIB51LibraryMagaer√√√√uVision2Debugger/Simulator√√RTX51Tiny√RTX51Full√(4)A51汇编器套件:A51汇
本文档为【基于单片机的俄罗斯方块毕业论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: ¥17.6 已有0 人下载
最新资料
资料动态
专题动态
个人认证用户
千与千寻
十年从业经验,高级工程师
格式:doc
大小:1MB
软件:Word
页数:0
分类:工学
上传时间:2021-08-26
浏览量:28