欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    基于单片机设计推箱子游戏protues仿真.docx

    • 资源ID:666659       资源大小:753.86KB        全文页数:64页
    • 资源格式: DOCX        下载积分:3金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    基于单片机设计推箱子游戏protues仿真.docx

    1、基于单片机设计推箱子游戏protues仿真南京邮电大学毕 业 论 文题 目:基于单片机设计推箱子游戏 专 业: 学生姓名: 班级学号: 指导教师: 指导单位: 南京邮电大学通信与信息工程学院 日期: 年 月 日至 年 月 日摘 要本论文主要介绍了基于AT89C52单片机推箱子游戏设计的游戏规则、硬件结构、软件代码的编写及工作原理,基于T6963C内核的液晶模块PG160128A液晶模块的介绍,在仿真软件上模拟出推箱子游戏。本系统是以单片机为其控制核心,以有源晶振构成的电路作为时钟信号,通过方向键的选择向单片机控制系统发出人物移动控制命令,控制系统接收命令后做出一系列必要的判断后,控制人物及箱子

    2、的移动。论文分为两大块:一块为游戏的硬件电路组成部分,一块为软件程序设计部分。在硬件电路里主要包括有源晶振部分、方向控制部分及液晶显示部分等与单片机的接线设计;软件编程方面主要是子程序和主程序的编写,包括:初始化代码、液晶驱动代码、方向键代码、过关判断代码等等。关 键 词:单片机;推箱子;PG160128A;T6963C内核ABSTRACTThis paper mainly introduces the based on single chip microcomputer AT89C52 tuixiangzi game design rules of the game, hardware st

    3、ructure, 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,

    4、 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.Paper is divided into two areas: a piece

    5、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

    6、main program of the writing, including: the initialization code, LCD driver code, the direction key code, pass judgment and so on.Key words: single chip microcomputer; pushing; PG160128A;T6963C kernel第一章 绪论11.1游戏总体功能的设计11.2系统框图11.3游戏设计的目的21.4游戏实现的目标21.5设计的基本要求2第二章 设计模块3 2.1控制模块3 2.2显示模块5 2.3T6963C指令

    7、集6 2.4Protues介绍8 2.5Keil uVision4编译环境介绍10第三章 游戏架构12 3.1游戏基本元素12 3.2推箱子方向控制键12 3.3游戏关卡设计13 第四章 设计结果14 4.1编译 14 4.2仿真图19 4.3开机画面20 4.4流程20 4.5游戏画面23结束语26致谢27参考文献28附录29第一章 绪论目前,在中国乃至世界,游戏产业已经逐渐成为微控制器领域的一个相当庞大以及重要的分支,而关于这方面的高级人才仍甚是缺乏,很多初学单片机的朋友都会对其庞大而复杂的机制感到困惑。本文以经典的推箱子游戏规则为基础,趣味而有序地对这个游戏从需求分析到整体方案进行了全新

    8、的设计。1.1 游戏总体功能的设计 首先运行游戏并载入相应的地图数据,屏幕上出现一个推箱子工人,其周围是预制好的地图、围墙人可以行走的通道、几个可以移动的箱子和游戏胜利结束时安放这些箱子的目标位置。玩家通过键盘操纵推箱子工人的位置。当工人靠近箱子并朝箱子位置移动的时候,箱子在其移动方向没有被其他物件(箱子或者墙)所阻碍的情况下可以被移动,当所有箱子被移到指定的安放位置后,则胜利通关并进入下一关的游戏。这个游戏是个小型游戏,实现的功能比较简单,不像大型游戏那样功能复杂,他只要控制人物奖箱子推到正确位置即可,难度随着箱子的增多而加大,对于实现这样一个功能,程序不是太复杂,用一块单片机足以达到目的。

    9、其次,他的控件比较少,只有四个方向键和一个开始键,这些控键在Proteus中用弹跳式按键代替即可。第三,游戏地图相对比较少、画面简单,只有箱子、人物、砖头等几个图形,这些在一个稍大的液晶屏上足以显示,用不着电脑显示屏。第四,就编程语言方面来说,编写这样一个简单的小游戏不需要什么高级语言,C语言或者汇编语言足以完成,C语言是一种通用行的语言,编程灵活,可读性强,移植性好;汇编语言是一种直接面向硬件的基础语言,最接近机器语言,执行速度快(本游戏采用C语言编写)。所以,单片机上运行推箱子游戏在硬件和软件两个方面都是可行的。1.2 根据设计目标,整个系统框图如图1.1: 图1.1 系统框图1.3 游戏

    10、设计的目的单片机是一门实践性很强的专业基础课,通过课程设计,达到进一步理解单片机的硬件、软件和综合应用方面的知识,培养实践能力和综合应用能力,开拓学习积极性、主动性,学会灵活运用已经学过的知识,并能不断接受新的知识。培养大胆发明创造的设计理念,为今后就业打下良好的基础。通过课程设计,掌握以下知识和技能:1.单片机应用系统的总体方案的设计;2.单片机应用系统的硬件设计;3.单片机应用系统的软件程序设计;4.单片机开发系统的应用和调试能力。1.4 游戏实现目标推箱子是一个经典游戏,目的是在训练逻辑思考能力。在一个规定区域中,要求把木箱放到指定的位置,稍不小心就会出现箱子无法移动或者通道被堵住的情况

    11、,所以需要巧妙的利用有限的空间和通道,合理安排移动的次序和位置,才能顺利的完成任务。1.5 设计的基本要求利用单片机进行硬件开发,必须具备用Keil C51编程能力和用Proteus进行仿真设计的能力。这使得单片机开发相对变得容易。我们利用课余时间装载上述软件,学会使用软件进行C51程序编程和单片机电路原理图仿真。一般而言,使用Keil C51集成调试软件建立自己的一个程序要经过如下几个步骤:建立一个工程项目文件;为工程选择一个目标器件(如AT89C52);为工程项目设定相关的软件和硬件的调试环境(如软件仿真或在线调试等);创建源程序文件并输入、编辑程序源代码(汇编格式或C语言格式);保存所创

    12、建的源程序项目文件并添加到项目中;程序文件的编译与连接及调试。Proteus软件可以进行单片机系统仿真设计,绘制电路原理图并进行单片机仿真。使用Proteus软件的一般步骤如下:根据单片机电路原理图拾取元器件;将元器件放置到绘图区;在绘图区对元器件进行布局并连接;将程序文件置入单片机进行软件调试。第二章 设计模块2.1 控制模块选用ATMEL公司 生产的AT89C52为主控芯片,它是是一个低电压,高性能CMOS 8位单片机,主要功能特性如下:1、兼容MCS51指令系统;2、8k可反复擦写(大于1000次)Flash ROM;3、32个双向I/O口;4、256x8bit内部RAM;5、3个16位

    13、可编程定时/计数器中断;6、时钟频率0-24MHz;7、2个串行中断,可编程UART串行通道;8、2个外部中断源,共8个中断源;9、2个读写中断口线,3级加密位;10、低功耗空闲和掉电模式,软件设置睡眠和唤醒功能;本次课设选用PDIP封装的 AT89C52芯片,其引脚功能如图2.1所示,图2.2为最小系统: 图2.1 引脚功能AT89C52 有256 个字节的内部RAM,80H-FFH 高128 个字节与特殊功能寄存器(SFR)地址是重叠的,也就是高128字节的RAM 和特殊功能寄存器的地址是相同的,但物理上它们是分开的。当一条指令访问7FH 以上的内部地址单元时,指令中使用的寻址方式是不同的

    14、,也即寻址方式决定是访问高128 字节RAM 还是访问特殊功能寄存器。如果指令是直接寻址方式则为访问特殊功能寄存器。例如,下面的直接寻址指令访问特殊功能寄存器0A0H(即P2 口)地址单元。MOV 0A0H,#data间接寻址指令访问高128 字节RAM,例如,下面的间接寻址指令中,R0 的内容为0A0H,则访问数据字节地址为0A0H,而不是P2 口(0A0H)。MOV R0,#data堆栈操作也是间接寻址方式,所以,高128 位数据RAM 亦可作为堆栈区使用。定时器0和定时器1:AT89C52的定时器0和定时器1 的工作方式与AT89C51 相同。图2.2 最小系统U1:AT89C52,DI

    15、Pf封装;C1,C2:22pf瓷片电容C3:10uf电解电容;X1:12M晶振R1:10K金属膜电阻2.2 显示模块PG160128A为一个128行160列的点阵液晶屏,他能显示各种字符、图形、汉子,基于T6963C内核控制,自带字符库,同时用户也可以自己建立汉字。图形库,其在Proteus中的元器件图形如图2.3:图2.3 PG16128A各引脚的的功能描述如表2.1:表2.1 PG160128A引脚功能引脚序列引脚名称引脚功能描述1FG信号设计引脚,此引脚为一个输出引脚,在电路连接时为空2VDD电源引脚,外接5v工作电压3VSS地引脚,接地4CON功能不详,在电路连接时悬空5WR写信号脚,

    16、当引脚为低电平时数据写入T6963C中6RD读信号脚,当引脚为低电平时数据从T6963C中读出7CE使能信号脚,正常工作时此脚接地,当为高电平时CPU不能与T6963C通信8C/D指令,数据信号脚:当引脚为高电平且WR=L时可以写入指令;当引脚为高电平且RD=L时可以读T6963C状态;当引脚为低电平且WR=L时可以写入数据;当引脚为低电平且RD=L时可以读出数据1118 D0D7数据引脚,用于液晶屏与单片机之间的数据通信10RET复位引脚,低电平有效,起复位作用,器件内部集成了上拉电阻,正常工作时此引脚接电源19FS1字形选择引脚FS1,用于选择字形,当为高电平时是5*8点阵字体,当为低电平

    17、时是8*8点阵字体 2.3 T6963C指令集T6963C是一个LCD控制器,可设计为用于液晶显示器控制驱动芯片和数据显示的存取器。该控制器有一个8位并行数据总线,控制线的读取或写入通过微控制器接口实现,可以直接连接到TMPZ80微处理器中。它有一个128字节的字符发生器也可以控制外部显示RAM中的数据,达64k字节。配置的文字,图形和外部字符发生器RAM数据能很容易控制其显示在窗口中,可以自由移动、分配内存范围。该器件支持非常广泛的字符格式,液晶显示器允许通过编程设置选择不同的组合。他可以用于文字,图形和结合文本模式及其他各种属性的功能。T6963C共分为十大类,26条指令,详细信息如表2.

    18、2表2.2 T6963C指令集指令类型有无参数D7D0引脚值指令说明指针设置D1/D200100001光标指针设置D1水平位置(低7位有效)D2垂直位置(低5位有效)00100010CGRAM偏置位置设置D1地址(低5位有效)D2=00H00100100地址指针位;D1低字节;D2高字节显示区域设置D1/D201000000文本区首址;D1低字节;D2高字节01000001文本区宽度字节数D1=字节数,D2=00H01000011图形区首址D1低字节;D2高字节01000011图形区宽度(字节数)D1=字节数,D2=00H显示方式设置无10000000逻辑“或”合成10000001逻辑“异或”

    19、合成10000011逻辑“与”合成10000100文本特征显示开关无1001N3N2N1N090H显示开关;N0=1/0光标闪烁启用/禁用N1=1/0光标显示启用/禁用;N2=1/0文本显示启用/禁用;N3=1/0图形显示启用/禁用光标形状选择 无10100N2N1N00xA0-0xA7表示光标占的行数屏读无11100000屏读数据一次读D111000000数据写,地址加111000001数据读,地址加111000010数据写,地址减111000011数据读,地址减111000100数据写,地址不变11000101数据读,地址不变数据自动读、写方式设置无10110000自动写设置1011000

    20、1自动读设置10110010自动写结束10110011自动读结束屏拷贝无11101000屏拷贝位操作无1111N3N2N1N0N3=1置1N3=0清 2.4 Proteus介绍单片机系统设计包含硬件和软件设计,调试过程一般分为软件调试、硬件调试和系统调试个过程,传统设计方法需在三者之间反复修改调试,如硬件电路有问题需重新修改硬件电路设计,调试费时费力,且浪费硬件资源,为解决上述问题本文在单片机系统的设计过程中引入了Protues仿真软件。Protues软件是英国Labcenter electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件的仿真功能,还能仿真单片机及外围器件。

    21、它是目前最好的仿真单片机及外围器件的工具。虽然目前国内推广刚起步,但已受到单片机爱好者、从事单片机教学的教师、致力于单片机开发应用的科技工作者的青睐。Protues不仅可将许多单片机实例功能形象化,也可将许多单片机实例运行过程形象化。前者可在相当程度上得到实物演示实验的效果,后者则是实物演示实验难以达到的效果。 它的元器件、连接线路等却和传统的单片机实验硬件高度对应。这在相当程度上替代了传统的单片机实验教学的功能,例:元器件选择、电路连接、电路检测、电路修改、软件调试、运行结果等。课程设计、毕业设计是学生走向就业的重要实践环节。由于protues提供了实验室无法相比的大量的元器件库,提供了修改

    22、电路设计的灵活性、提供了实验室在数量、质量上难以相比的虚拟仪器、仪表,因而也提供了培养学生实践精神、创造精神的平台随着科技的发展,“计算机仿真技术”已成为许多设计部门重要的前期设计手段。它具有设计灵活,结果、过程的统一的特点。可使设计时间大为缩短、耗资大为减少,也可降低工程制造的风险,相信在单片机开发应用中protues也能茯得愈来愈广泛的应用。Protues软件具有其它EDA工具软件(例:multisim)的功能。这些功能是:(1)原理布图(2)PCB自动或人工布线(3)SPICE电路仿真革命性的特点:(1)互动的电路仿真。用户甚至可以实时采用诸如RAM,ROM,键盘,马达,LED,LCD,

    23、AD/DA,部分SPI器件,部分IIC器件。(2)仿真处理器及其外围电路。可以仿真51系列、AVR、PIC、ARM、等常用主流单片机。还可以直接在基于原理图的虚拟原型上编程,再配合显示及输出,能看到运行后输入输出的效果。配合系统配置的虚拟逻辑分析仪、示波器等,Protues建立了完备的电子设计开发环境。具有3大功能模块:(1)个易用而又功能强大的ISIS原理布图工具;(2)PROSPICE混合模型SPICE仿真;(3) ARES PCB设计;Protues提供了丰富的资源: (1)protues可提供的仿真元器件资源:仿真数字和模拟、交流和直流等数千种元器件,有30多个元件库。(2)protu

    24、es可提供的仿真仪表资源 :示波器、逻辑分析仪、虚拟终端、SPI调试器、I2C调试器、信号发生器、模式发生器、交直流电压表、交直流电流表。理论上同一种仪器可以在一个电路中随意的调用。(3)除了现实存在的仪器外,protues还提供了一个图形显示功能,可以将线路上变化的信号,以图形的方式实时地显示出来,其作用与示波器相似,但功能更多。这些虚拟仪器仪表具有理想的参数指标,例如极高的输入阻抗、极低的输出阻抗。这些都尽可能减少了仪器对测量结果的影响。(4)protues可提供的调试手段protues提供了比较丰富的测试信号用于电路的测试。这些测试信号包括模拟信号和数字信号。软件仿真:支持当前的主流单片

    25、机,如51系列、AVR系列、PIC12系列、PIC16系列、PIC18系列、Z80系列、HC11系列、68000系列等。1)提供软件调试功能2)提供丰富的外围接口器件及其仿真RAM,ROM,键盘,马达,LED,LCD,AD/DA,部分SPI器件,部分IIC器件。这样很接近实际。在训练学生时,可以选择不同的方案,这样更利于培养学生。3) 提供丰富的虚拟仪器利用虚拟仪器在仿真过程中可以测量外围电路的特性,培养学生实际硬件的调试能力。4) 具有强大的原理图绘制功能电路功能仿真:在PROTUES绘制好原理图后,调入已编译好的目标代码文件:*.HEX,可以在protues的原理图中看到模拟的实物运行状态和过程。2.5 Keil uVision4编译环境介绍Keil uVision4集成开发环境是Keil Software,Inc/Keil Elektronik GmbH开发的基于80C51内核的微处理器软件开发平台,内嵌多种符合当前工业标准的开发工具,可以从工程建立到管理、编译、链接、目标代码的生成、软件仿真、硬件仿真等完整的开发流程尤其是C编译工具在产生代码的准确性和效率方面达到了较高的水平,而且可以附加灵活的控制选项,在开发大型项目时非常理想。Keil C51集成开发环境的主要功能有


    注意事项

    本文(基于单片机设计推箱子游戏protues仿真.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开