基于单片机的游戏机设计与实现毕业设计
- 格式:doc
- 大小:346.00 KB
- 文档页数:54
摘要近年来,掌上游戏机一直非常火爆。
从较早的gameboy到现在高端的psp,掌上游戏机一直备受人们青睐。
现在嵌入式行业发展很快,微控制器的性能也越来越强大,也使得制作一台掌上游戏机难度降低。
基于此本设计基于STM32芯片设计了一款掌上游戏机。
主要设计内容包括游戏机的硬件和软件设计。
主要的应用模块和电路包括STM32核心电路、TFTLCD显示屏、陀螺仪(加速度计)传感器、独立按键、USB转串口芯片等。
本设计的一个特点就是可以下载程序到STM32芯片中,所以这款掌上游戏机也是一个STM32的开发板,使用者可以使用该系统自行开发游戏和学习单片机的使用。
本设计制作完成,经过多次试验测试,系统正常工作,娱乐性较高。
关键词:STM32;掌上游戏机;开发板AbstractIn recent years, handheld game has been very popular. Gameboy from an earlier end to the current psp, handheld game has attracted people of all ages. Now embedded industry developed rapidly, the performance of the microcontroller more powerful, but also makes the production of a handheld video game to reduce the difficulty.The design is based on the STM32 chip based on the design of a handheld game. The main design elements including Game hardware and software design. The main application modules, and circuits including STM32 core circuit, TFTLCD display, gyroscope (accelerometers) sensor, separate buttons, USB to serial chip like. One feature of this design is that you can download to STM32 chip, so this is a handheld game console STM32 development board, the user can use the system self-developed games and learning microcontrollers. The design is completed, after several trials testing, the system is working properly, entertaining high.Key words:STM32;Handheld game; development board目录1 绪论 (1)1.1 设计背景 (1)1.2 设计意义 (1)1.3国内外研究现状 (2)1.4本设计所做工作 (3)1.5本章小结 (3)2 系统方案设计 (4)2.1系统结构框图 (4)2.2系统主控芯片介绍 (4)2.3显示屏介绍 (6)2.4操作方式介绍 (9)2.5下载模块设计 (10)2.6本章小结 (11)3 系统硬件设计 (12)3.1 STM32核心电路 (12)3.2 LCD显示模块电路 (13)3.3按键电路 (14)3.4陀螺仪接口电路 (15)3.5程序下载电路 (16)3.6供电电路 (18)3.7系统电路原理图与PCB (19)3.8本章小结 (19)4 系统软件设计 (20)4.1 keil开发环境介绍 (20)4.2主程序设计 (20)4.3中断程序设计 (22)4.4游戏程序设计 (23)4.5输入信号检测程序设计 (24)4.6本章小结 (25)5 系统调试与功能测试 (26)5.1系统调试 (26)5.1.1硬件检测 (26)5.1.2软件调试 (26)5.2系统功能测试 (27)5.2.1测试步骤 (27)5.2.2测试结果 (29)5.3本章小结 (31)6 结论与展望 (32)6.1结论 (32)6.2展望 (32)7 致谢 (33)参考文献 (34)附录A:英文原文 (35)附录B:中文翻译 (42)附录C:原理图和PCB (48)1 绪论1.1设计背景近年来,社会发展十分迅速,我国的经济、科技等各领域都发展非常快,特别是以计算机技术、软件、通信等为核心的高新技术产业取得了十分迅速的发展。
基于单片机的乒乓球游戏机设计1、系统方案乒乓球比赛是由甲乙双方参赛,再加上裁判的三人游戏。
乒乓球比赛模拟机是一种用发光二极管模拟乒乓球运动的电子游戏机,同时可以容纳三人玩耍。
1. 用8个LED排成一条直线,以中点为界,两边各代表参赛双方的位置。
其中一只点亮的LED指示球的当前位置。
点亮的LED依次从左到右,或从右到左移动,其移动速度应能进行调节。
2. 当球(点亮的那只LED)运动到某方德最后一位时,参赛者应能果断地按下位于自己一方的按钮开关,即表示启动球拍击球,若击中则使球向相反方向移动,若未击中,则对方得一分。
3. 一方得分时,电路自动响铃3s,这期间发球无效,等铃声停止后方能继续比赛。
4. 设置自动计分电路。
甲乙双方各用两位数码管进行计分显示,每记满11分为1局。
最好考虑双方各10分之后,领先2分者为胜。
5. 甲乙双方各设置一个发光二极管表示拥有发球权,每得2分自动交换发球权,拥有发球权的一方发球才能有效。
2、硬件设计原理图如下:3、单片机软件设计1、首先是系统初始化:InitTimer(); //初始化定时器EA=1; //全局中断开关TR0=0;TR1=0;ET0=1; //开启定时器0ET1=1;EX0=0;EX1=0;2、中断服务程序void timer1(void) interrupt 3 //用于产生报警信号{TH1=0x4c;TL1=0x00; //50msTR1=1;count_1miao++;if(count_1miao==60){count_1miao=0;flag_1miao=1;ALAM=1;TR1=0;}}3、数码管程序/*****显示分数子程序*****/void Disp_score(void) //显示温度{P0=LEDData[scoreL/10];P2=0x7F;Delay(200);P2=0xFF;P0=LEDData[scoreL%10];P2=0xBF;Delay(200);P2=0xFF;P0=LEDData[scoreR/10];P2=0xDF;Delay(200);P2=0xFF;P0=LEDData[scoreR%10];P2=0xEF;Delay(200);P2=0xFF;}4、核心算法程序if((start==0)&&(run==0)&&flag_1miao==1) //停止状态下,控下start键{Disp_score(); //调用数码管显示{if(start==0) //开始按键按下{if(((scoreL==11)&&(scoreR<10))||((scoreR==11)&&(s coreL<10))||((scoreL>11)&&(scoreL-scoreR==2))||((scoreR>11)&(scoreR-scoreL==2)))// 判断左右方到11,另一方小于10,或者大于12,两方差大于2,这局结束{TR1=0;ALAM=1;scoreL=0;scoreR=0;}run=1; // 运行标志位置1jiqiu_l=0;jiqiu_r=7;zongjiqiushu=0;if((scoreL+scoreR)%4<=1) //所得分数和4取余,(比如1+1和为2和4取余余数为2大于1)余数小于1就是左侧发球,大于一就是右侧发球,就是每侧发球两次,L_R=0;elseL_R=1;if(L_R==0){countt0=0;P1=PPQdata[0];EX0=1;EX1=0;}else{countt0=7;P1=PPQdata[7];EX0=0;EX1=1;}}}}4、proteus仿真设计Proteus软件是一款应用比较广泛的工具,它可以在没有硬件平台的基础上通过自身的软件仿真出硬件平台的运行情况,这样就可以通过软件仿真来验证我们设计的方案有没有问题,如果有问题,可以重新选择器件,连接器件,直到达到我们设定的目的,避免我们搭建实物的时候,如果当初选择的方案有问题,我们器件都已经焊接好了,再去卸载下去,再去焊接新的方案的器件,测试,这样会浪费人力和物力,也给开发者带来一定困惑,Proteus仿真软件就很好的解决这个问题,我们在设计之初,就使用该软件进行模拟仿真,测试,选择满足我们设计的最优方案。
基于单片机的微型游戏机—贪吃的蛇摘要单片微型机简称单片机,它是在一片芯片上集成了中央处理部件,存储器、定时器/计数器和各种输入输出设备等接口部件。
单片机是微机发展的一个重要的分支,自问世以来,性能不断地改善和提高,加之单片机具有集成度高、功能强、速度快、体积小、功耗小、使用方便、性能可靠、价格便宜等优点,故在工业控制、数据采集和处理、通信系统、家用电器等领域的应用日益广泛。
国内虽然起步较晚,但单片机的潜力越来越被人们所重视,尤其在工业控制、自动化仪器仪表、计算机系统接口、智能化外设等应用领域发展很快。
它的应用对于产品升级换代、机电一体化都具有重要的意义,在工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数,被用于各种不同产品的生产。
在通信行业更为广泛利用,手机从只能基本通话,到现在一台手机拥有各种不同的功能,单片机得到了广泛的应用。
手机可以听音乐,听收音机,玩游戏,照相片等等,比较流行的手机游戏贪吃蛇就能用单片机实现。
关键词:51单片机贪吃蛇游戏Based on single chip micro-game - greedy snakeABSTRACTSingle-chip microprocessor referred to as microcontrollers, which is integrated on a chip, a central processing unit, memory, timer / counters and a variety of input and output devices such as Interface Unit. SCM is a microprocessor development, an important branch, since its inception, performance, continuous improvement and increase, coupled with microcontroller with an integrated high, strong function, high speed, small size, power consumption, easy to use, reliable, cheap, etc. advantages, so in the industrial control, data acquisition and processing, communication systems, home appliances and other fields increasingly wide range of applications. Although the domestic late start, but the potential of SCM has been growing attention, especially in industrial control, automation instruments and meters, computer system interface, intelligent peripherals and other applications developed rapidly. Its application for the upgrading of products, mechanical and electrical integration, have important significance in industrial production, current, voltage, temperature, pressure, flow, flow rate and switching capacity are commonly used parameters of the main accused, was used for a variety production of different products. More extensive use of the communications industry, cell phone calls from can only be basic to the present, mobile phones have a variety of functions, single-chip has been widely used. Phone can listen to music, listening to the radio, play games, according to photos, etc., the more popular cell phone game Snake will be able to use SCM.Keyword:51singlechip snake game目录1 第一章绪论 (1)1.1概述 (1)1.2选题背景 (1)1.3课题分析 (1)1.4思路设计 (1)2第二章系统的基本组成和工作原理 (2)2.1系统的基本组成 (2)2.2系统的工作原理 (2)3第三章显示电路的选取和设计 (2)3.1游戏显示的器件选择 (2)3.2显示功能的硬件电路 (3)4第四章键盘扫描的电路设计 (4)4.1键盘扫描思路设计 (4)4.2键盘硬件电路设计 (4)5第五章系统程序设计 (5)5.1编译软件 (5)5.2软件设计工具 (5)5.3C51 优化的 C 语言交叉编译器 (10)5.4系统设计流程图 (11)参考文献 (15)附录 (16)谢辞 (43)1 第一章绪论1.1概述本设计采用80C51核心的单片机最小系统,80C51是MCS—51系列单片机钟CHMOS工艺的一个典型品种。
中文摘要摘要本文设计了一款新颖的以单片机为控制核心的贪食蛇游戏系统。
所设计的贪食蛇能完成移动、吃食物和摆放游戏自动输出的食物、使之默认出现3节蛇身、吃到每个随机点数而得分等功能。
硬件设计包括LED模块、键盘模块、供电模块驱动模块和下载模块。
软件采用C语言编程,方便灵活,大大加快了软件开发速度,缩短了开发周期,并且便于移植。
为提高开发效率和硬件稳定性,采用了功能强大的硬件仿真软件Proteus,依托该软件提供的仿真环境搭配Keil作为软件开发调试环境进行仿真调试成功。
所设计的贪食蛇游戏系统轻巧便携、老少皆宜,且成本较低,具有一定的市场前景。
关键词:贪吃蛇;单片机;游戏I英文摘要AbstractThis paper designs a novel single-chip microcomputer as the snake game control system. The snake can complete mobile, food and put the game automatically output of food, which appears by default 3 snake, eat each random points and scoring functions. The hardware design includes LED module, keyboard module, power supply module and driving module and download module. The software is programmed with C language, convenient and flexible, greatly accelerate the speed of software development, shorten the development cycle, and easy to transplant. In order to improve the development efficiency and stability of the hardware, the powerful hardware simulation software Proteus, based on the simulation environment of the software provided with Keil as the software development environment for debugging simulation debugging success. Snake game system design of the light and portable, suitable for all ages, and the cost is low, has a certain market prospects.KeyWords:Greedy Snake;51MCU;GameI目录目录第一章绪论 (1)1.1课题设计的背景与意义 (1)1.2 贪食蛇游戏的发展及现状 (2)1.2.1贪食蛇游戏发展历史 (2)1.2.2我国单机游戏的现状 (3)1.3 课题设计的内容与要求 (4)1.3.1课题设计的内容 (4)1.3.2课题设计的要求 (4)1.4设计方案 (4)1.4.1硬件设计 (4)1.4.2软件设计 (5)第二章系统总体设计 (6)2.1 系统基本组成及工作原理 (6)2.2 系统的主要元器件介绍 (8)2.2.1 74HC138 (8)2.2.2 74HC154 (10)2.2.3 74HC595 (12)2.3 主控芯片单片机 (14)2.3.1单片机的介绍 (14)2.3.2单片机的应用 (15)2.4 单片机红外无线 (17)2.4.1红外遥控 (17)2.4.2红外遥控发射 (18)2.4.5红外遥控接收 (19)2.4.6红外编码标准 (19)第三章系统硬件的设计 (21)3.1单片机控制模块的设计 (21)3.1.1 单片机的选择 (21)3.1.2 时钟电路 (24)I目录3.1.3 复位电路 (26)3.1.4 最小系统 (27)3.2 供电电路设计 (27)3.3 显示模块设计 (28)3.3.1 点阵模块 (28)3.3.2 驱动电路设计 (31)3.3.3 行驱动电路 (32)3.3.4 列驱动电路 (33)3.3.5 扫描显示过程 (34)3.3.6 显示模块原理图 (35)3.4下载模块设计 (35)第四章系统软件的设计 (37)4.1软件的整体设计思想 (37)4.2 软件开发环境 (37)4.2.1 keil软件的介绍 (37)4.2.2 软件功能 (38)4.2.3 软件应用流程 (39)4.3系统主函数的设计 (40)4.3.1按键检测模块 (42)4.3.2 显示模块 (43)4.3.3分数模块 (44)第五章系统调试 (46)5.1软件调试 (46)5.2硬件调试 (46)5.3作品展示 (48)总结 (49)参考文献 (50)致谢 (51)附录一:原理图 (I)附录二:原程序 (I)II第一章绪论第一章绪论“贪食蛇”又称为“贪吃蛇”,是一种益智小游戏。
基于51单片机与8*8点阵的贪吃蛇游戏机开发目录一、硬件设计1、8*8LED点阵的原理说明本设计采用的点阵显示模块是ARK-SZ411288K,其原理结构图如图1所示。
ARK-SZ411288K显示模块是8*8点阵的显示模块,从图1中可以看出,8*8点阵共需要64个发光二极管组成,且每个发光二极管是放置在行线和列线的交叉点上,当对应的某一列置1电平,某一行置0电平,则相应的图1 8*8LED点阵的原理图二极管就亮。
ARK-SZ411288K可与CPU直接连接,根据引脚说明,将其各个引脚与相应的I/O 口连接。
2、LED阵列驱动电路正向点亮一颗LED,至少也得10~20毫安,若电流不够大,则LED不够亮。
而不管是8051的输入/输出口,还是TTL、CMOS的输出端,其高态输出电流都不是很高,不过1~2毫安而已,因此,很难直接高态驱动LED。
这时候就需要额外的驱动电路,本设计采用的是74HC595,用74HC595芯片驱动LED有以下特点:速度较快,功耗较小,LED的数目多少随意,既可以控制共阴极的LED显示器,也可以控制共阳极的LED显示器,可以软件控制LED的亮度,还可以在必要的时候关断显示(数据保留),以减小功耗,并可随时唤醒显示。
用它设计的电路,不仅软硬件设计简单,而且功耗低,驱动能力强,占用的I/O口线较少,是一种造价低廉,应用灵活的设计方案。
图2 74HC595管脚图74HC595内含8位串入、串/并出移位寄存器和8位三态输出锁存器。
寄存器和锁存器分别有各自的时钟输入(SCLK和SLCK),都是上升沿有效。
当SCLK从低到高电平跳变时,串行输入数据(SDA)移入寄存器;当SLCK从低到高电平跳变时,寄存器的数据置入锁存器。
清除端(CLR) 的低电平只对寄存器复位(QS为低电平),而对锁存器无影响。
当输出允许控制(EN)为高电平时, 并行输出(Q0~Q7)为高阻态,而串行输出(QS)不受影响。
题目:[单片机俄罗斯方块设计]摘要随着社会的不断的发展和进步,人们对娱乐产品的关注在不断的增加,特别是电子游戏产品在我们的生活中占据了很重要的地位。
俄罗斯方块游戏是一款风靡全球的经典游戏。
这款游戏之所以叫做俄罗斯方块,是因为发明这款游戏的人是俄罗斯人。
本次为了回顾经典设计了一款基于单片机的俄罗斯方块游戏机。
本次设计了一款基于单片机的俄罗斯方块游戏机,该游戏机可以丰富我们的业余生活。
在硬件设计上该游戏机以STC89C52单片机为基础、使用LCD12864图形液晶可以显示游戏的界面、通过按键实现游戏机的按钮的功能、并具有蜂鸣器可以实现声音提示的功能。
在软件设计上,使用C语言进行了俄罗斯方块游戏的控制程序的编写,并在keil软件上进行了调试。
最后在Proteus仿真软件上对俄罗斯方块游戏的功能进行了仿真,并焊接了实物电路板。
关键词:STC89C52单片机;俄罗斯方块;游戏机;LCD12864液晶AbstractWith the continuous development and progress of society, people pay more and more attention to entertainment products, especially video game products play a very important role in our life. The Tetris game is a classic game that is popular all over the world. The game is called the Tetris, because the people who invented the game were Russian. This time in order to review the classic design of a single chip based Tetris block game machine.The design of a single chip computer based Tetris game machine, which can enrich our amateur life. On the hardware design, the game machine is based on STC89C52 microcontroller, and it can display the interface of the game by using LCD12864 graphic LCD, realize the button function of the game machine by button, and has the function of voice prompt by buzzer. In the software design, the control program of Tetris game is written in C language and debugged on the keil software. Finally, the function of the Tetris game is simulated on the Proteus simulation software, and the physical circuit board is welded.Keywords:STC89C52 singlechip;Tetris block;game machine;LCD12864 liquid crystal目录摘要 (I)Abstract........................................................... I I 第1章绪论.. (1)1.1课题研究背景和意义 (1)1.2俄罗斯方块的发展状况及趋势 (1)1.3课题研究的主要内容 (1)1.4课题研究的主要内容 (2)第2章系统整体方案设计 (4)2.1系统的功能要求 (4)2.2系统总体方案框图设计 (4)2.3单片机模块的选择 (5)2.4液晶显示模块的选择 (6)2.5按键电路的选择 (7)第3章系统整体硬件设计 (9)3.1单片机电路设计 (9)3.1.1STC89C52单片机介绍 (9)3.1.2晶振电路设计 (10)3.1.3复位电路设计 (10)3.1.4单片机最小系统电路设计 (11)3.2 LCD12864液晶显示电路 (11)3.2.1点阵LCD的显示原理 (11)3.2.2LCD12864液晶的硬件连接 (12)3.3按键控制电路 (12)3.4声音提示电路设计 (13)3.5电源电路 (13)第4章系统软件设计 (15)4.1程语言的选择 (15)4.2软件介绍和工程建立 (15)4.3俄罗斯方块流程图设计 (16)4.3.1主程序流程图 (16)4.3.2游戏外观显示流程图 (18)4.3.3俄罗斯方块向左/右移动工作流程图 (19)4.3.4俄罗斯方块中按下键的流程图 (20)第5章系统的调试与制作 (21)5.1 KEIL软件介绍 (21)5.2程序调试 (21)5.3 proteus仿真步骤 (22)5.4实物综合调试 (23)结论 (26)参考文献 (27)附录 (28)致谢.............................................. 错误!未定义书签。
摘要从十九世纪末到二十世纪五、六十年代,从内容单一的投币游戏机到科技发达的电子计算机游戏一个娱乐业革命也在酝酿之中。
本系统主要的是基于单片机的俄罗斯方块游戏,设计的主要部分有了解俄罗斯方块游戏的游戏规则、设计出整个系统的硬件结构并进行实物焊接、编写软件代码并进行调试。
由于显示部分是用基于KS0108内核的液晶模块FG12864E,所以需要弄清楚FG12864E液晶显示屏的详细介绍以及KS0108的指令集。
本系统模拟出的俄罗斯方块游戏,具有难度依次加大、速度依次加快、按键发声、系统低功耗、可实现在线调试等特点。
本系统是以单片机为其控制核心,以有源晶振构成的电路作为时钟信号,通过方向键的选择向单片机控制系统发出砖块移动控制命令,控制系统接收命令后做出一系列必要的判断后,控制砖块的移动和旋转。
然后通过对数组的控制,在液晶屏上显示出游戏的画面,通过液晶显示画面,显示出砖块的移动和旋转。
本设计已通过了硬件测试,系统运行稳定。
用本系统设计的硬件结构还可以运行其他对显示要求不大的小游戏,如贪吃蛇、推箱子、五子棋。
关键词:AT89S52单片机;俄罗斯方块;KS0108;FG12864E液晶显示;C语言AbstractFrom the 19th century to the twentieth century 1950s &1960s, from the content of the single slot game to advanced technology of computer games a revolution in the brewing industry.This system mainly based on single-chip microcomputer is the game tetris, design of the main parts of the game tetris know the rules of the game, the whole system design of the hardware structure and physical welding, write software code and debugging. As the display part of the kernel is based on KS0108 LCD module FG12864E, so it is necessary to clarify FG12864E LCD KS0108 details and instruction set. The system simulates the Tetris game, with the increasing order of difficulty, speed, turn speed up, key voice, low-power system can be realized online debugging and so on. The system is based on the core of its control MCU to active crystal form of the circuit as a clock signal, through the choice of keys issued to the microcomputer control system blocks move control command, the control system receives a command to make the necessary judgments , the control blocks the movement and rotation. Then through an array of control, the LCD screen shows the game screen, through the liquid crystal display screen, showing the movement and rotation blocks. This design has already passed the test of the operation of the system, hardware. In this system, the design of hardware structure can run on display are required in other games, such as the Snake, Boxy Pocket, backgammonKey Words:AT89S52 SCM; Russian square; KS0108; FG12864E LCD display;C language目录1 引言 (1)2 课题任务及方案论证 (2)2.1主要任务 (2)2.2 方案论证 (2)2.2.1 主控制器的选择 (2)2.2.2 液晶屏的选择 (4)3 系统的硬件组成及接口介绍 (6)3.1电源部分 (6)3.2单片机部分 (7)3.2.1 AT89S52单片机的介绍 (7)3.2.2复位电路 (7)3.2.3 晶振电路 (8)3.3液晶显示芯片与单片机接口电路 (9)3.4控键、蜂鸣器与单片机接口电路 (9)4 软件部分设计及调试 (10)4.1 C语言程序设计 (10)4.1.1 C语言简介 (10)4.1.2 C语言特点 (10)4.2游戏运行方式 (11)4.2.1游戏规则介绍 (11)4.2.2流程图 (11)4.3部分子程序 (13)4.3.1液晶屏初始化函数 (13)4.3.2液晶屏写指令和写数据函数 (13)4.3.3方块生成函数 (14)4.3.4移动和旋转函数 (15)4.4程序调试过程 (16)4.4.1电路检测 (16)4.4.2调试步骤 (16)4.4.3调试遇到的问题及解决方案 (16)5程序调试和仿真软件 (17)5.1 Keil2介绍及编程 (17)5.1.1软件介绍 (17)5.1.2软件应用 (17)5.2 Proteus介绍及应用 (18)5.2.1软件介绍 (18)5.2.2软件应用 (19)总结 (20)参考文献 (21)附录1 总电路图 (22)附录2 系统程序 (23)致谢 .................................................................................................... 错误!未定义书签。
1 引言如今,游戏机风行的程度,是第一台电子游戏机的研制者诺兰-布什纳尔先生始料不及的。
在全世界最大的城市,直至最小的村庄,从纽约最辉煌的游乐场,到高加索最小的乡镇儿童娱乐点,在千家万户,正在进行着千千万万这样的“战斗”,伴随着无数成功与失败,兴奋与懊丧。
游戏机带来了一个全球性的疯狂症,其他任何娱乐与之相比都望尘莫及。
然而,究竟是什么原因使游戏机如此风行呢? 在回顾了游戏机发展简史之后,我们不难悟出,技术进步在游戏机发展过程中起到了极大的促进作用。
第二次世界大战以后,电子计算机技术得到了突飞猛进的发展。
先是由晶体管代替了笨重的真空管,后来出现了集成电路和大规模集成电路,使电子计算机一代一代实现更新,同时软件技术也发展迅速。
在美国,集中了许多计算机软件的设计人才,他们工作之余,时常喜爱编一种能与人斗智的“游戏”,以此来锻炼编程的能力。
这种“游戏”花样繁多,但其特点都是利用计算机软件事先设计好的“分析”、“判断”能力反过来与人较量。
由于不断修改更新,使计算机的“智力”水平与人难分高低。
随着深蓝计算机与人的棋类对决,到现在的PSP游戏机或者是家庭用的X-BOX 游戏机,游戏机的技术是日益的发展、进步。
但是,技术进步绝不是游戏机风行的唯一因素。
随着终端设备开发能力的加强,作为娱乐终端的游戏机也得到了很大程度的发展。
只有得到了游戏终端技术的支持,才能做出更新、更高难的游戏。
这也加速了游戏机在全球风行程度,所以对于游戏机的研究和设计具有很重要的意义,这也是本课题研究的来源2 课题任务及方案论证2.1主要任务现如今,游戏风靡全球,各种游戏层出不穷,大到网络型的复杂游戏,小到手机游戏、单机游戏、智力游戏等简单游戏。
但是这种简单也是相对于网络游戏等大型游戏而言的,小游戏本身的代码还是相当繁杂,它要执行一系列指令才能正确的完成一个简单的操作,才能按照玩家的意志工作。
所以我们现在见到的游戏多是在基于电脑这种高速执行指令的平台上运行的,脱离了它就什么事都做不了了。
那么推箱子这种小游戏能否在单片机上编出来呢?答案是肯定的,现从以下几个方面加以论证。
2.2 方案论证首先,我们编写的这个游戏是一个小型游戏,实现的功能比较简单,不像大型游戏那样功能复杂,它只要控制俄罗斯砖块放到正确的位置即可,难度随着砖块的增多而加大,对于实现这样一个功能,程序不是太复杂,用一块单片机足以达到目的。
其次,它的控件也比较少只有4个方向键和2个辅助的功能键,这些控键在Proteus中用弹跳式按键代替即可。
第三,游戏地图相对比较小、画面简单,只有几个图形,这些在一块稍大的液晶屏上就足以显示,用不着电脑显示屏。
第四,就编程语言方面来说,编写这样一个简单的小游戏不需要什么高级的语言,C语言或汇编语言就足以完成,C语言是一种通用型的语言,编程灵活、可读性强、移植性好;汇编语言是一种直接面向硬件的基础语言,最接近机器语言,执行速度快(本游戏采用C语言编写)。
由以上几点可知:单片机上运行推箱子游戏在硬件和软件两个方面都是可行的。
2.2.1 主控制器的选择AT89S52是标准的40引脚双列直插式集成电路芯如图2-1所示,AT89C51是一种带4K字节闪烁可编程可擦除只读存储器(FPEROM—Falsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。
该器件采用ATMEL高密度非易失存储器制造技术制造,与工业标准的MCS-51指令集和输出管脚相兼容。
由于将多功能8位CPU和闪烁存储器组合在单个芯片中,ATMEL 的AT89C51是一种高效微控制器,为很多嵌入式控制系统提供了一种灵活性高且价廉的方案。
AT89S52 具有以下标准功能:8K 字节 Flash,256 字节 RAM,32 位I/O 口线,看门狗定时器,2 个数据指针,三个16 位定时器/计数器,一个6 向量 2 级中断结构,全双工串行口,片内晶振及时钟电路。