基于单片机设计推箱子游戏,protues仿真解析

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;
本次课设选用PDIP封装的AT89C52芯片,其引脚功能如图2.1所示,图2.2为最小系统:
图2.1 引脚功能
致谢·····························································27
参考文献·························································28
附录······························································29
Key words:single chip microcomputer;pushing;PG160128A;T6963C kernel
第一章 绪论···················································1
1.1游戏总体功能的设计·········································1
2.5Keil uVision4编译环境介绍····································10
第三章 游戏架构···············································12
3.1游戏基本元素···············································12
3.2推箱子方向控制键···········································12
3.3游戏关卡设计···············································13
第四章 设计结果················································14
1.5 设计的基本要求
利用单片机进行硬件开发,必须具备用Keil C51编程能力和用Proteus进行仿真设计的能力。这使得单片机开发相对变得容易。我们利用课余时间装载上述软件,学会使用软件进行C51程序编程和单片机电路原理图仿真。
一般而言,使用Keil C51集成调试软件建立自己的一个程序要经过如下几个步骤:建立一个工程项目文件;为工程选择一个目标器件(如AT89C52);为工程项目设定相关的软件和硬件的调试环境(如软件仿真或在线调试等);创建源程序文件并输入、编辑程序源代码(汇编格式或C语言格式);保存所创建的源程序项目文件并添加到项目中;程序文件的编译与连接及调试。
1.5设计的基本要求·············································2
第二章 设计模块···············································3
2.1控制模块··················································3
1.2 根据设计目标,整个系统框图如图1.1:
图1.1 系统框图
1.3 游戏设计的目的
单片机是一门实践性很强的专业基础课,通过课程设计,达到进一步理解单片机的硬件、软件和综合应用方面的知识,培养实践能力和综合应用能力,开拓学习积极性、主动性,学会灵活运用已经学过的知识,并能不断接受新的知识。培养大胆发明创造的设计理念,为今后就业打下良好的基础。
1、兼容MCS51指令系统;
2、8k可反复擦写(大于1000次)Flash ROM;
3、32个双向I/O口;
4、256x8bit内部RAM;
5、3个16位可编程定时/计数器中断;
6、时钟频率0-24MHz;
7、2个串行中断,可编程UART串行通道;
8、2个外部中断源,共8个中断源;
9、2个读写中断口线,3级加密位;
通过课程设计,掌握以下知识和技能:
1.单片机应用系统的总体方案的设计;
2.单片机应用系统的硬件设计;
3.单片机应用系统的软件程序设计;
4.单片机开发系统的应用和调试能力。
1.4 游戏实现目标
推箱子是一个经典游戏,目的是在训练逻辑思考能力。在一个规定区域中,要求把木箱放到指定的位置,稍不小心就会出现箱子无法移动或者通道被堵住的情况,所以需要巧妙的利用有限的空间和通道,合理安排移动的次序和位置,才能顺利的完成任务。
南京邮电大学
毕 业 论 文
题 目:基于单片机设计推箱子游戏
专 业:
学生姓名:
班级学号:
指导教师:
指导单位:南京邮电大学通信与信息工程学院
日期: 年 月 日至 年 月 日
摘要
本论文主要介绍了基于AT89C52单片机推箱子游戏设计的游戏规则、硬件结构、软件代码的编写及工作原理,基于T6963C内核的液晶模块PG160128A液晶模块的介绍,在仿真软件上模拟出推箱子游戏。本系统是以单片机为其控制核心,以有源晶振构成的电路作为时钟信号,通过方向键的选择向单片机控制系统发出人物移动控制命令,控制系统接收命令后做出一系列必要的判断后,控制人物及箱子的移动。
首先运行游戏并载入相应的地图数据,屏幕上出现一个推箱子工人,其周围是预制好的地图、围墙人可以行走的通道、几个可以移动的箱子和游戏胜利结束时安放这些箱子的目标位置。玩家通过键盘操纵推箱子工人的位置。当工人靠近箱子并朝箱子位置移动的时候,箱子在其移动方向没有被其他物件(箱子或者墙)所阻碍的情况下可以被移动,当所有箱子被移到指定的安放位置后,则胜利通关并进入下一关的游戏。这个游戏是个小型游戏,实现的功能比较简单,不像大型游戏那样功能复杂,他只要控制人物奖箱子推到正确位置即可,难度随着箱子的增多而加大,对于实现这样一个功能,程序不是太复杂,用一块单片机足以达到目的。其次,他的控件比较少,只有四个方向键和一个开始键,这些控键在Proteus中用弹跳式按键代替即可。第三,游戏地图相对比较少、画面简单,只有箱子、人物、砖头等几个图形,这些在一个稍大的液晶屏上足以显示,用不着电脑显示屏。第四,就编程语言方面来说,编写这样一个简单的小游戏不需要什么高级语言,C语言或者汇编语言足以完成,C语言是一种通用行的语言,编程灵活,可读性强,移植性好;汇编语言是一种直接面向硬件的基础语言,最接近机器语言,执行速度快(本游戏采用C语言编写)。所以,单片机上运行推箱子游戏在硬件和软件两个方面都是可行的。
论文分为两大块:一块为游戏的硬件电路组成部分,一块为软件程序设计部分。在硬件电路里主要包括有源晶振部分、方向控制部分及液晶显示部分等与单片机的接线设计;软件编程方面主要是子程序和主程序的编写,包括:初始化代码、液晶驱动代码、方向键代码、过关判断代码等等。
关键词:单片机;推箱子;PG160128A;T6963C内核
ABSTRACT
This paper mainly introduces the based on single chip microcomputer AT89C52 tuixiangzi game design rules of the game, hardware structure, software code compiling, and working principle of LCD module of T6963C kernel based PG160128A LCD module, simulate the tuixiangzi game on the simulation diagram.This system is based on single chip microcomputer as its control core, active crystals constitute the circuit as the clock signal, through the choice of the direction key issued a person move control command to the single-chip microcomputer control system, control system after the judgements made after a series of necessary receive commands, to control the movement of figures and boxes.
t6963ckernel第一章绪论111游戏总体功能的设计112系统框图113游戏设计的目的214游戏实现的目标215设计的基本要求2第二章设计模块321控制模块322显示模块523t6963c指令集624protues介绍825keiluvision4编译环境介绍10第三章游戏架构1231游戏基本元素1232推箱子方向控制键1233游戏关卡设计13第四章设计结果1束语26致谢27参考文献28附录29南京邮电大学通达学院2014届本科生毕业设计论文第一章绪论目前在中国乃至世界游戏产业已经逐渐成为微控制器领域的一个相当庞大以及重要的分支而关于这方面的高级人才仍甚是缺乏很多初学单片机的朋友都会对其庞大而复杂的机制感到困惑
Paper is divided into two areas: a piece of hardware circuit part of the game, a piece of software design part.In the hardware circuit mainly includes active crystals, direction control part and part, such as liquid crystal display (LCD) and the connection design of single chip microcomputer;Software programming are mainly subroutines and main program of the writing, including: the initialization code, LCD driver code, the direction key code, pass judgment and so on.
1.2系统框图···················································1
1.3游戏设计的目的·············································2
1.4游戏实现的目标·············································2
4.4流程·······················································20
4.5游戏画面···················································23
结束语···························································26
4.1编译·······················································14
4.2仿真图······················································19
4.3开机画面···················································20
第一章 绪论
目前,在中国乃至世界,游戏产业已经逐渐成为微控制器领域的一个相当庞大以及重要的分支,而关于这方面的高级人才仍甚是缺乏,很多初学单片机的朋友都会对其庞大而复杂的机制感到困惑。本文以经典的推箱子游戏规则为基础,趣味而有序地对这个游戏从需求分析到整体方案进行了全新的设计。
1.1 游戏总体功能的设计
2.2显示模块···················································5
2.3T6963C指令集···············································6
2.4Protues介绍················································8
Proteus软件可以进行单片机系统仿真设计,绘制电路原理图并进行单片机仿真。使用Proteus软件的一般步骤如下:根据单片机电路原理图拾取元器件;将元器件放置到绘图区;在绘图区对元器件进行布局并连接;将程序文件置入单片机进行软件调试。
第二章 设计模块
2.1 控制模块
选用ATMEL公司生产的AT89C52为主控芯片,它是是一个低电压,高性能CMOS8位单片机,主要功能特性如下:
相关文档
最新文档