ImageVerifierCode 换一换
格式:DOCX , 页数:58 ,大小:1.22MB ,
资源ID:662829      下载积分:10 文钱
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,省得不是一点点
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.wenke99.com/d-662829.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: QQ登录   微博登录 

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(邵阳学院2009届电子信息工程专业毕业设计(论文).docx)为本站会员(文****钱)主动上传,文客久久仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知文客久久(发送邮件至hr@wenke99.com或直接QQ联系客服),我们立即给予删除!

邵阳学院2009届电子信息工程专业毕业设计(论文).docx

1、毕业设计(论文)课 题 名 称 基 于 单 片 机 的 推 箱 子 游 戏 设 计 学 生 姓 名 学 号 系、年级专业 信 息 工 程 系 05 级 电 子 信 息 工 程 专业 指 导 教 师 职 称 讲 师 2009 年 5 月 24 日摘 要本论文主要介绍了基于单片机的推箱子游戏的规则、硬件结构、软件代码的编写及工作原理、基于 T6963C 内核的液晶模块 PG160128A 的详细介绍以及指令集。模拟出 Windows 系统下的推箱子游戏,具有任意关数选择、难度依次加大、游戏步数记录、游戏时间记录、按键发声、系统低功耗、可实现在线调试等特点。本系统是以单片机为其控制核心,以有源晶振构

2、成的电路作为时钟信号,通过方向键的选择向单片机控制系统发出人物移动控制命令,控制系统接收命令后做出一系列必要的判断后,控制人物及箱子的移动。本设计已通过了实验仿真,运行稳定,基本上没有规则方面的错误。论文主要分为两大块:一块为游戏的硬件电路组成部分,一块为软件程序设计部分。在硬件电路里主要包括有源晶振部分、方向控制部分及液晶显示部分等与单片机的接线设计;软件编程方面主要是子程序和主程序的编写,包括:初始化代码、液晶驱动代码、方向按键代码、过关判断代码、步数记录代码、时间记录代码、按键发声代码、关数选择代码及表格数据代码等等。所有这些在文中都有详细说明。关键词:单片机;推箱子;PG160128A

3、; T6963C 内核;指令集AbstractThis paper introduces the single-chip based on the rules of the game Sokoban, the structure of hardware, software code writing and working principle, based on the core T6963C LCD module PG160128A, as well as details of the instruction set. Simulate the system under Windows Sok

4、oban game, an arbitrary number of related options, in turn increase the difficulty of the game a few step-by-step record time of the game record, sound button, low-power system can achieve on-line debugging and so on. The system is based on its single-chip control of the core, consisting of active c

5、rystal clock circuit clock signal sent through the arrow keys to select the single-chip control system to control mobile command characters, the control system after receiving an order to make a Series to determine the necessary, to control the movement of people and boxes. This design has been adop

6、ted by the simulation experiments, stable, rules virtually no mistakes. The main thesis is divided into two blocks: one for the games hardware components of the circuit, as a part of the software programming. In the hardware circuitry, including the main active part of the crystal, the direction and

7、 control of some of the liquid crystal display and other parts of the single-chip wiring design; software programming side of the main subroutine is the main program and the preparation, including: initialization code, LCD Driver code, the direction of key code, customs code to determine, step-by-st

8、ep record of the number of code, record time code, voice button code, customs code and select a number of forms of data code and so on. All of these are in the text in detail.Key words:MCU; Sokoban; PG160128A; T6963C core; instruction set目录摘要.Abstract.1 前言.1.1 课题的来源.1.2 课题研究的意义.1.3 课题国内研究现状.1.4 课题研究

9、的目的和主要内容.2 推箱子游戏方案论证.2.1 游戏能否在单片机上实现.2.2 单片机、液晶屏的选择.3 推箱子游戏的硬件部分设计.3.1 PG160128A 液晶屏介绍.3.2 T6963C 及其指令集介绍.3.3 晶振、复位电路.3.4 液晶显示屏与单片机接口电路.3.5 控键、喇叭与单片机接口电路.4 推箱子游戏的软件部分设计.4.1 游戏流程图.4.2 液晶屏驱动代码设计.4.3 初始化代码设计.4.4 游戏时间代码设计.4.5 游戏选关代码设计.4.6 步数、关数更新代码设计.4.7 游戏过关代码设计.4.8 图形显示子程序.4.9 中断代码设计.4.10 方向控制代码设计.5 推

10、箱子游戏的系统仿真.5.1 Keil2 编译环境介绍.5.2 Proteus 在线仿真平台介绍.5.3 建立工程项目.5.4 Proteus 中原理图的绘制及文件的加载.5.5 开机及游戏界面显示.5.7 仿真结果分析及解决方法.6 总结.参考文献.致谢.附件.1 前言1.1 课题的来源如今,游戏机风行的程度,是第一台电子游戏机的研制者诺兰?布什纳尔先生始料不及的。在全世界最大的城市,直至最小的村庄,从纽约最辉煌的游乐场,到高加索最小的乡镇儿童娱乐点,在千家万户,正在进行着千千万万这样的“战斗” ,伴随着无数成功与失败,兴奋与懊丧。游戏机带来了一个全球性的疯狂症,其他任何娱乐与之相比都望尘莫及

11、。然而,究竟是什么原因使游戏机如此风行呢? 在回顾了游戏机发展简史之后,我们不难悟出,技术进步在游戏机发展过程中起到了极大的促进作用。但是,技术进步绝不是游戏机风行的唯一因素。随着终端设备开发能力的加强,作为娱乐终端的游戏机也得到了很大程度的发展。这也加速了游戏机在全球风行程度,所以对于游戏机的研究和设计具有很重要的意义,这也是本课题研究的来源。1.2 课题研究的意义用单片机来设计一个游戏,不同于现在的大型网络游戏和手机游戏,也不同于其他的小型的单片机控制程序,它对游戏编写者对单片机架构、指令系统、工作模式、数据在内存分配以及传递的把握都提出了更高的要求,特别是在游戏运行当中对外部按键的处理,

12、各子程序的调用流程,先后顺序等代码的复杂程度也都是单片机的一般程序不能比的。可以这样说,能完整的编出游戏,并可以稳定运行,会让我们对游戏有一个更深刻的认识;对游戏编写的难度有一个更切身的理解;对自己的编程能力及逻辑思维能力有一个很大的提高;再一次看到了 C 语言的适用性、易移植性、高效性,相信对 C 语言的学习也不无帮助。1.3 课题国内研究现状目前国内游戏公司已达到了 200 多家,市场上运营的游戏亦达 250 多款,但与欧美、韩国等国家的游戏发展程度还有一定差距。我国有广阔的游戏市场,宽阔的发展空间,无限的继续挑战和剧增的玩家队伍。随着网络的兴起,巨大的市场需求量使中国在短短几年,已经从无

13、到有,从陌生到熟知,从掌握到运用。游戏必将成为网络竞争中的主角,他的商业利益和商业价值无法估量。中国,人口众多的国家,随着人们生活水平的提高,温饱已经不是最终目的,我们寻求的是更加多姿多彩的生活,那么我们怎么能错过游戏这一最佳休闲娱乐项目呢?所以我国游戏发展前景一片大好,更应加大游戏开发力度!1.4 课题研究的目的和主要内容本文针对推箱子游戏机的设计,首先介绍了选题的要求,之后详细叙述了软件和硬件的设计过程。在时钟脉冲的作用下,各个按键都能按照事先设定好的规则进行游戏控制。确定键能使界面从初始化显示切换到游戏界面显示,上下左右键控制箱子的移动方向,如果可以移动则移动方块同时跟踪人物的位置及刷新

14、动态数组的内容。在游戏的同时程序会随时记录玩家所走的游戏步数、游戏时间,直至本关通过,在进入下一关的同时更新地图并刷新游戏步数和时间。选关键用于选择游戏关数,在游戏过程中这个键任何时候都有效,当按下选关键后,游戏地图返回第一关,再次按下时游戏进入二关,这样每按下一次键游戏关数加一,如果游戏到了第最后一关将自动返回第一关。硬件部分是由中央处理器(AT89C51 单片机) ,控制部分(独立式按键系统) ,显示部分(PG160128A 液晶显示模块)组成的;软件部分的主要内容是通过对游戏程序进行编写和调试以实现推箱子游戏的功能。通过硬件和软件调试,并针对问题分析修改后,游戏机系统可以稳定运行。游戏机

15、系统中各个部分之间通过数据的传送最终完成了整个游戏运行、显示和进行按键的功能。最后论文对设计进行了总结,对设计中可以进一步改善的地方提出了建议。2 推箱子游戏方案论证现如今,游戏风靡全球,各种游戏层出不穷,大到网络型的复杂游戏,小到手机游戏、单机游戏、智力游戏等简单游戏。但是这种简单也是相对于网络游戏等大型游戏而言的,小游戏本身的代码还是相当繁杂,它要执行一系列指令才能正确的完成一个简单的操作,才能按照玩家的意志工作。所以我们现在见到的游戏多是在基于电脑这种高速执行指令的平台上运行的,脱离了它就什么事都做不了了。那么推箱子这种小游戏能否在单片机上编出来呢?答案是肯定的,现从以下几个方面加以论证

16、。2.1 游戏能否在单片机上实现首先,我们编写的这个游戏是一个小型游戏,实现的功能比较简单,不像大型游戏那样功能复杂,它只要控制人物将所有箱子推到正确的位置即可,难度随着箱子的增多而加大,对于实现这样一个功能,程序不是太复杂,用一块单片机足以达到目的。其次,它的控件也比较少只有 4 个方向键和 2 个辅助的功能键,这些控键在 Proteus 中用弹跳式按键代替即可。第三,游戏地图相对比较小、画面简单,只有箱子、人物和正确位置箱子等几个图形,这些在一块稍大的液晶屏上就足以显示,用不着电脑显示屏。第四,就编程语言方面来说,编写这样一个简单的小游戏不需要什么高级的语言,C 语言或汇编语言就足以完成,

17、C 语言是一种通用型的语言,编程灵活、可读性强、移植性好;汇编语言是一种直接面向硬件的基础语言,最接近机器语言,执行速度快(本游戏采用 C 语言编写) 。由以上几点可知:单片机上运行推箱子游戏在硬件和软件两个方面都是可行的。2.2 单片机、液晶屏的选择2.1 单片机的选择单片机的种类有很多:通用型单片机按位数分有 4 位机,8 位机,16 位机和 32位机等等。按厂家分种类就更多,我国目前最常用的单片机有如下几家:Intel 公司的(MCS51 系列,MCS96 系列);Atmel 公司的(AT89 系列,MCS51 内核);Microchip 公司的(PIC 系列) ;Motorola 公司

18、的(68HCXX 系列);Zilog 公司的(Z86 系列);Philips 公司的(87,80 系列,MCS51 内核);Siemens 公司的(SAB80 系列,MCS51 内核);NEC 公司的(78 系列),每种单片机的都有不同,包括:I/O口个数、定时/计数器个数、数据/程序存取区大小、中断源个数、有无看门狗中断、有无 A/D 转化等等。基于本游戏只用到了不到 20 个 I/O 口;2 个定时器断。所以选择了 Atmel公司的 AT89C51 单片机。其参数如下:1、基于 8051 的全静态 CMOS 工艺控制器;2、3 级流水线指令执行架构;3、32 个 I/O 口4、2 个定时/

19、计数器5、6 个中断源6、4K 的闪存程序存储器7、128 字节的片内数据存取器由以上参数可知 AT89C51 单片机完全满足游戏设计要求。2.2 液晶屏的选择液晶屏的种类也有很多,我们经常用到的液晶屏包括:AMPIRE128*64;LGM12641BS1R ;LM016L;LM020L ;LM017L 等等。前两种为不带字库的汉字、图形点阵液晶屏,共 64 行,128 列,能显示 4行 8 列 32 个 16*16 点阵汉字或 4 行 16 列 64 个 16*8 点阵字符或者最大 128*64点阵图形。也有带字库的 12864,功能一样。后几种则是带字库的字符点阵,不能显示图形。LM016

20、L 为能显示 2 行 16列 32 个字符的液晶屏;LM020L 为能显示 1 行 16 列 16 个字符的液晶屏;LM017L 为能显示 2 行 32 列 16 个字符的液晶屏。由以上介绍可知:后 3 种液晶不能显示图形,所以最先排除,因为游戏中地图都是以图形的形式扫描进去的;前 2 种液晶虽然可以显示图形,但屏幕较小显示不完所有游戏界面的内容,光就地图显示就需要 128*144 点阵的屏幕,而这两种都是 128*64 的液晶屏,所以必须找一种更大的液晶显示屏。最后找到 PG160128A 液晶屏。很明显,这块液晶屏是 160*128 点阵的屏幕,除了满足地图显示外还可以显示其他记录信息,如关数显示、时间显示、步数显示等等,完全满足设计要求。这块液晶和以上的很不一样,它基于 T6963C内核,引脚更多,功能更复杂,指令集也更多(这些相关内容将在下一章具体

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。