信息与通信基于单片机的模拟射击训练游戏机硬件部分Word下载.docx
- 文档编号:8409105
- 上传时间:2023-05-11
- 格式:DOCX
- 页数:12
- 大小:29.81KB
信息与通信基于单片机的模拟射击训练游戏机硬件部分Word下载.docx
《信息与通信基于单片机的模拟射击训练游戏机硬件部分Word下载.docx》由会员分享,可在线阅读,更多相关《信息与通信基于单片机的模拟射击训练游戏机硬件部分Word下载.docx(12页珍藏版)》请在冰点文库上搜索。
任务书27附录二:
开题报告30附录三:
外文原文34附录四:
中文翻译42摘要本文主要内容是利用AT89S51单片机与160*128的液晶组合设计的模拟射击游戏,实现模拟简单的射击游戏,在像素为160*128的液晶上显示模拟的手枪图标,并可通过按键控制手枪的上下移动和射击并判断是否击中目标然后统计得分显示出来,每次击中目标时蜂鸣器会发出击中音效,另有重新开始的功能键。
本课题是基于单片机技术和160*128的广泛应用而提出。
本次做的模拟射击游戏是以单片机(ATMEL公司的8位单片机AT89S51)为核心,结合PG160128LCD显示器,再配以相应的软件,达到实现模拟射击游戏的目的.近年来随着计算机在社会领域的渗透和大规模集成电路的发展,单片机的应用正在不断地走向深入,由于它具有功能强,体积小,功耗低,价格便宜,工作可靠,使用方便等特点,因此特别适合于与控制有关的系统,越来越广泛地应用于自动控制,智能化仪器,仪表,数据采集,军工产品以及家用电器等各个领域,单片机往往是作为一个核心部件来使用,在根据具体硬件结构,以及针对具体应用对象特点的软件结合,以作完善。
单片机应用的重要意义在于,它从根本上改变了传统的控制系统设计思想和设计方法。
从前必须由模拟电路或数字电路实现的大部分功能,现在已能用单片机通过软件方法来实现了。
这种软件代替硬件的控制技术也称为微控制技术,是传统控制技术的一次革命。
利用单片机射击的模拟射击游戏是单片机与PG160129的组合应用,可以很好得模拟常见的简单射击游戏,对于开发单片机更深层次应用有非常现实的意义。
关键词:
单片机;
模拟射击游戏;
160128LCD;
C语言AbstractThispaperismainlyusingMCUAT89C51and160*128LCDcombinationdesignsimulationshootinggame,simulatingsimpleshootinggame,inpixelsfor160*128LCDdisplayonsimulationpistoliconandthroughpressthebuttontocontrolpistolandshotandmoveupanddowntodecidewhetheritishittingthetargetandstatisticalscoredisplay,everytimewhenhittingthetargetbuzzerwillissuehitsound,otherwiserestartfunctionkeys.Thissubjectisbasedonsinglechipmicrocomputerand160*128extensiveapplicationoftheproposed.Thisgameismadeofsimulatedfiringmicrocontroller(AT89C51)asthecore,combiningPG160128LCDdisplay,matchagainwiththecorrespondingsoftware,tosimulatetheshootinggame.Inrecentyears,withthecomputerinthesocialsectorandthedevelopmentoflarge-scaleintegratedcircuits,theapplicationofSCMiscontinuouslytothoroughly,becauseithasthestrongfunction,smallvolume,lowpowerconsumption,lowpriceandreliable,easytouse,soparticularlsuitableforrelatedcontrolandsystem,moreandmorewidelyusedinautomaticcontrol,intelligentinstrumentandmeter,dataacquisition,militaryproducts,andhouseholdelectricalappliances,etc,themicrocontrollerisoftenusedasacorecomponent,accordingtothespecifichardwarestructureandsoftwareapplication,theobjectcharacteristicsforimprovement.MCUsignificanceliesinthatithasradicallychangedthetraditionalcontrolsystemdesignideasanddesignmethod.Oncemustbyanalogcircuitsordigitalcircuitimplementationofmostfunction,cannowsingle-chipthroughsoftwaremethodstoachieve.Thissoftwareinsteadofhardwareofcontroltechnologyisalsocalledthemicrocontroltechnology,traditionalcontroltechnologyrevolution.UsingsinglechipcomputersimulationoffiringshootinggameisthecombinationofMCUandPG160129,cangoodsimulationcommonsimpleshootinggame,fordevelopingthemicrocontrollerdeeperapplicationhaveveryrealisticsignificanceKeyword:
MCU;
Simulationshootinggame;
LCD;
Clanguage39华北水利水电学院毕业设计第1章绪论1.1课题背景、意义、目的及现状1.1.1课题的背景如今,游戏机风行的程度,是第一台电子游戏机的研制者诺兰?
布什纳尔先生始料不及的。
在全世界最大的城市,直至最小的村庄,从纽约最辉煌的游乐场,到高加索最小的乡镇儿童娱乐点,在千家万户,正在进行着千千万万这样的“战斗”,伴随着无数成功与失败,兴奋与懊丧。
游戏机带来了一个全球性的疯狂症,其他任何娱乐与之相比都望尘莫及。
然而,究竟是什么原因使游戏机如此风行呢?
在回顾了游戏机发展简史之后,我们不难悟出,技术进步在游戏机发展过程中起到了极大的促进作用。
但是,技术进步绝不是游戏机风行的唯一因素。
随着终端设备开发能力的加强,作为娱乐终端的游戏机也得到了很大程度的发展。
这也加速了游戏机在全球风行程度,所以对于游戏机的研究和设计具有很重要的意义,这也是本课题研究的来源。
1.1.2课题的意义和目的用单片机来设计一个游戏,不同于现在的大型网络游戏和手机游戏,也不同于其他的小型的单片机控制程序,它对游戏编写者对单片机架构、指令系统、工作模式、数据在内存分配以及传递的把握都提出了更高的要求,特别是游戏运行当中对外部按键的处理,各子程序的调用流程,先后顺序等代码的复杂程度也都是单片机的一般程序不能比的。
可以这样说,能完整的编出游戏,并可以稳定运行,会让我们对游戏有一个更深刻的认识;
对游戏编写的难度有一个更切身的理解;
对自己的编程能力及逻辑思维能力有一个很大的提高;
再一次看到C语言的适用性、易移植性、高效性,相信对C语言的学习也不无帮助。
此次课题的目的:
(1)巩固、加深和扩大大家对51系列单片机应用的知识面,提高综合及灵活运用所学知识解决工业控制的能力;
(2)培养针对课题需要,选择和查阅有关手册,图表及文献资料的自学能力,提高组成系统,编程,调试的动手能力;
(3)对课题设计方案的分析,选择,比较,熟悉用51单片机做系统开发,研制的过程,软硬件设计的方法,内容及步骤;
(4)进一步掌握C语言在硬件编程中的应用,熟悉怎样用C语言实现LCD上的绘图功能。
1.1.3课题国内研究现状目前国内游戏公司已达到了200多家,市场上运营的游戏亦达250多款,但与欧美、韩国等国家的游戏发展程度还有一定差距。
我国有广阔的游戏市场,宽阔的发展空间,无限的继续挑战和剧增的玩家队伍。
随着网络的兴起,巨大的市场需求量使中国在短短几年,已经从无到有,从陌生到熟悉,从掌握到运用。
游戏必将成为网络竞争的主角,他的商业利益和商业价值无法估量。
中国,人口众多的国家,随着人们生活水平的提高,温饱已经不是最终目的,我们寻求的是更加多姿多彩的生活,那么我们怎么能错过游戏这一最佳休闲娱乐项目呢?
所以我国游戏发展前景一片大好,更应加大游戏开发力度!
!
1.1.4本系统主要研究内容本文针对射击类游戏机的设计,首先介绍了选题的要求,之后详细叙述了硬件的设计过程。
本设计主要研究如何模拟使通过51单片机与PG160128LCD的联合应用,仿真简单的射击游戏,通过按键中断控制手枪的上下移动和发射,击中目标时即发出声音提示,自动统计命中次数并显示。
硬件部分是由中央处理器(AT89S51单片机),控制部分(独立式按键系统),显示部分(PG160128A液晶显示模块)组成的;
软件部分的主要内容是通过对游戏程序进行编写和调试以实现移动射击的功能。
通过硬件和软件调试,并针对问题分析修改后,游戏机系统可以稳定运行。
游戏机系统中各个部分之间通过数据的传送最终完成了整个游戏运行、显示和进行按键的功能。
最后论文对设计进行了总结,对设计中可以进一步改善的地方提出了建议。
第2章射击类游戏的设计2.1系统组成及工作原理2.1.1系统组成整个硬件电路由单片机及单片机的复位和晶振电路、液晶显示器、4个独立键盘、蜂鸣器和一个非门以及一个四输入与门组成。
2.1.2工作原理说明系统启动后LCD首先初始化,接着从左上角开始清屏,接着显示预置好的游戏界面:
图2-1游戏开始界面延迟五秒再次清屏,在第一行显示“★★射击训练游戏★★”,中间显示游戏主图像,最下面调用Show_Score_and_Bullet()函数显示游戏得分和剩余子弹数目。
接着打开定时器T0,定时器T1和外部中断INT0,定时器T0控制屏幕每秒通过随机函数刷新应该被击中的目标位置,定时器T1模拟命中后的枪声,并将剩余子弹数目和得分在液晶上同步显示。
蜂鸣器PG160128LCD液晶显示模块按键中断AT89S51单片机单片机复位晶振电路图2-2系统组成框图第3章系统硬件的选择3.1单片机、液晶屏的选择3.1.1单片机的选择单片机的种类有很多:
通用型单片机按位数分有4位机,8位机,16位机和32位机等等。
按厂家分种类就更多,我国目前最常用的单片机有如下几家:
Inter公司的(MCS51系列,MCS96系列);
Atmel公司的(AT89系列,MCS51内核);
Microchip公司的(PIC系列);
Motorola公司的(68HCXX系列);
Zilog公司(Z86系列);
Philips公司的(87,80系列,MCS51内核);
Siemens公司的(SAB80系列,MCS51内核);
NEC公司的(78系列),每种单片机的都有不同,包括:
I/O口个数、定时/计数器个数、数据/程序存取区大小、有无看门狗中断、有无A/D转化等等。
基于本游戏只用到了不到20个I/O口;
2个定时器断。
所以选择了Atmel公司的AT89S51单片机。
其参数如下:
1、基于8051的全静态CMOS工艺控制器;
2、3级流水线指令执行构架;
3、32个I/O口;
4、2个定时/计数器5、6个中断源;
6、4K的闪存程序储存器;
7、128字节的片内数据存取器;
由以上参数可知AT89S51单片机完全满足游戏设计要求。
3.1.2液晶屏的选择液晶屏的种类也有很多,我们经常用到的液晶屏包括:
AMPIRE128*64;
LGM12641BSIR;
LM016L;
LM020L;
LM017L等等。
前两种为不带字库的汉字、图形点阵液晶屏,共64行,128列,能显示4行8列32个16*16点阵汉字或4行16列64个16*8点阵字符或者最大128*64点阵图形。
也有带字库的12864,功能一样。
后几种则是带字库的字符点阵,不能能显示图形。
LM016L为能显示2行16列32个字符的液晶屏;
LM020L为能显示1行16列16个字符的液晶屏;
LM017L为能显示2行32列16个字符的液晶屏。
由以上介绍可知:
后3种液晶不能显示图形,所以最先排除,因为游戏中地图都是以图形的形式扫描进去的;
前2种液晶虽然可以显示图形,但屏幕较小显示不完所有游戏界面的内容,光就地图显示就需要128*144点阵的屏幕,而这两种都是128*64的液晶屏,所以必须找一种更大的液晶显示屏。
最后找到PG160128A液晶屏。
很明显,这块液晶屏是160*128点阵的屏幕,除了满足地图显示外还可以显示其他记录信息,如关数显示、时间显示、步数显示等等,完全满足设计要求。
这块液晶和以上的很不一样,它基于T6963C内核,引脚更多,功能更复杂,指令集也更多(这些相关内容将在下一章具体介绍)。
第4章系统硬件4.1PG160128A液晶屏4.1.1PG160128A液晶屏介绍PG160128A为一个128行160列的点阵液晶屏。
他能显示各种字符、图形、汉字,基于T6963C内核控制,自带字符库,同时用户也可以自己建立汉字、图形库,其在Proteus中的元器件图形如下:
图4-1PG160128A元件图各引脚的功能描叙如下表:
表4-1PG160128A引脚功能表引脚序列引脚名称引脚功能描述1FG信号设计引脚,引脚为一个输出引脚,电路连接时悬空2VDD电源引脚,接5V工作电压3VSS地引脚,接地4CON功能不详,电路连接时悬空5WR写信号脚,引脚为低电平时数据写入T6963C中6RD读信号脚,引脚为低电平时数据从T6963C中读出7CE使能信号脚,常工作时此脚接地,为高电平时CPU不能与T6963C通信8C/D指令、数据信号脚:
当引脚为高电平且WR=L时可以写入指令;
当引脚为高电平且RD=L时可以读T6963C状态;
当引脚为低电平且WR=L时以写入数据;
当引脚为低电平且RD=L时可以读出数据10D0~D7数据引脚,用于液晶屏与单片机之间的数据通信11~18RST复位引脚,低电平有效,起复位作用,器件内部集成了上位电阻,正常工作时此引脚接电源19FS1字形选择引脚FS1,用于选择字形,当为高电平时是5*8点阵字体,当为低电平时是8*8点阵字体4.1.2T6963C及其指令集介绍T6963C是一个LCD控制器,可设计为用于液晶显示器控制驱动芯片和数据显示的存取器。
该控制器有一个8位并行数据总线,控制线的读取或写入通过微控制器接口实现,可以直接连接到TMPZ80微处理器中。
它有一个128字节的字符发生器也可以控制外部显示RAM中的数据,达64K字节。
配置的文字,图形和外部字符发生器RAM数据能很容易控制其显示在窗口中,可以自由移动、分配内存范围。
该器件支持非常广泛的字符格式,液晶显示器允许通过编程设置选择不同的组合。
它可以用于文字,图形和结合文本模式及其他各种属性的功能。
T6963C共分为十大类,26条指令,详细信息如下表:
表4-2T6963C指令集指令类型有无参数D7~D0引脚值指令说明指针设置D1/D200100001光标指针设置D1水平位置(低7位有效)D2垂直位置(低5位有效)00100010CGRAM偏置地址设置D1地址(低5位有效)D2=00H00100100地址指针位;
D1低字节;
D2高字节显示区域设置D1/D201000000文本区首址;
D2高字节01000001文本区宽度字节数D1=字节数D2=00H01000011图形区首址D1低字节D2高字节01000011图形区宽度(字节数)D1=字节数D2=00H显示方式设置无10000000逻辑“或”合成10000001逻辑“异或”合成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自动写设置10110001自动读设置10110010自动写结束10110011自动读结束屏拷贝无11101000屏拷贝位操作无1111N3N2N1N0N3=1置1N3=0清4.2AT89C51单片机4.2.1AT89S51单片机介绍AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4kbytes的可系统编程的Flash只读程序存储器,器件采用ATMEL公司的高密度、非易失性存储技术生产,兼容标准8051指令系统及引脚。
它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中,ATMEL公司的功能强大,低价位AT89S51单片机可为您提供许多高性价比的应用场介,可灵活应用于各种控制领域。
图4-289S51引脚图主要性能参数:
·
与MCS-51产品指令系统完全兼容·
4k字节在线系统编程(ISP)Flash闪速存储器·
1000次擦写周期·
4.0---5.5V的工作电压范围·
全静态工作模式:
0Hz---33MHz·
三级程序加密锁·
128×
8字节内部RAM·
32个可编程I/O口线·
2个16位定时/计数器·
6个中断源·
全双工串行UART通道·
低功耗空闲和掉电模式·
中断可从空闲模式唤醒系统·
看门狗(WDT)及双数据指针·
掉电标识和快速编程特性·
灵活的在线系统编程(ISP一字节或页写模式)功能特性概述:
AT89S51提供以下标准功能:
字节Flash闪速存储器,字节内部RAM,4k12832个I/O口线,看门狗(WDT),两个数据指针,两个16位定时/计数器,一个5向量两级中断结构,一个全双工串行通信口,片内振荡器及时钟电路。
同时,AT89S51可降至0Hz的静态逻辑操作,并支持两种软件可选的节电工作模式。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 信息 通信 基于 单片机 模拟 射击 训练 游戏机 硬件 部分