浅析《贪吃蛇》游戏设计与制作

2017-05-30 04:46刘港毓龙波欧阳朝煌张磊涛
科技风 2017年5期
关键词:制作娱乐游戏

刘港毓 龙波 欧阳朝煌 张磊涛

摘 要:今年来,蛇蛇大作战成为风靡全国的游戏之一,这一款游戏有吸引人们的地方,并且,我学的的专业刚好可以涉及这个领域,因此,我们团队打算以此为设计的课题,打算利用所学过的知识制作一个简易的贪吃蛇游戏。下面我来介绍这款游戏的设计思路与过程。本系统主要是完成贪吃蛇游戏的基本操作。用户可以自己练习和娱乐。本系统需要满足以下几点要求:1)可以用方向按键来改变蛇的运行方向。2)使用空格按键暂停或继续游戏,并且可在随机的区域产生食物。3)当蛇吃到食物就变成新的蛇体,碰到自己的身体则游戏结束,否则正常运行。

关键词:贪吃蛇;游戏;娱乐;制作

一、关于本游戏的处理流程

二、核心元器件的选择和使用

1)处理芯片。STC12C5A60S2系列单片机是宏晶科技生产的单时钟/机器周期(1T)的单片机,是高速/低功耗/超强抗干扰的新一代8051单片机,指令代码完全兼容传统8051,但速度快8-12倍。内部集成MAX810专用复位电路,2路PWM,8路高速10位A/D转换(250K/S),针对电机控制,强干扰场合。2)显示屏。12864液晶显示屏是一种具有4位/8位并行、2线或3线串行多种接口方式,内部含有国标一级、二级简体中文字库的点阵图形液晶显示模块;其显示分辨率为128×64,内置8192個16*16点汉字,和128个16*8点ASCII字符集。利用该模块灵活的接口方式和简单、方便的操作指令,可构成全中文人机交互图形界面。具有低功耗,功能强大等优点,及其适合本课题。

三、本游戏的模块设计

1)搭建硬件:主要是单片机基础外围电路的搭建,按键和单片机的连接,12864和单片机的连接。使用单片机最小系统构建单片机基础外围电路,包括复位、晶振等电路。单片机P0口与12864的三态数据线连接,12864的指令控制端、读写端、使能端分别与单片机的P2.0、P2.1、P2.2连接。2)建立按键扫描函数:在没有用延时函数的按键扫描,打破按键扫描让CPU进行大量无意义的延时的传统。即在案件扫面函数里面加入静态变量,在没按键没按下时,静态变量清零,按键按下后,自增,并与控制值比较,以按键延时,同时每一次进入按键检测函数很快就能出来,为CPU提高运行效率。3)摸清12864指令集功能:基本指令集和扩充指令集。12864提供了两种指令集,以进入汉字显示模式或者图形显示模式,由于本课题需要应用到12864的汉字显示与图形显示,而且12864是带汉字库的液晶显示屏,因此在显示汉子时进入基本指令集,在显示贪吃蛇图形界面时进入扩充指令集。4)建立针对12864的库函数及文件,根据12864的画图地址建立复杂的打点函数。单片机需要与12864通信,需要为12864检忙,需要向12864发送命令,读写数据,以及在贪吃蛇移动过程中,需要为12864在液晶屏上打点,显示贪吃蛇及食物,因此,建立12864的驱动库函数,让程序更具有可读性、可维护性。5)构建贪吃蛇:用打点函数构建贪吃蛇的基本元素,贪吃蛇的食物由定时器产生的随机数生成,随机数种子是用户按下按键的时间。

四、本游戏的主要功能

本系统主要完成一下几个方面的功能:1)开机进入主界面,在主界面中通过按键可以开始游戏,可以进入贪吃蛇难度选择,可以进入排行榜查看最高成绩。2)开始游戏后,如果要退出游戏,则需要按单片机的复位键,继续游戏则按四个方向键,以控制贪吃蛇的移动。3)当贪吃蛇碰到自身身体时,游戏结束,并进入分数结算页面,分数高低由贪吃蛇选择的难度及吃的食物多寡决定。4)进入主界面。

五、本游戏的控制模块

贪吃蛇游戏控制模块主要是单片机引出来的四个轻触按键,上下按键在主界面控制光标上下移动,在贪吃蛇运行时作为贪吃蛇的上下移动方向键,左右按键在主界面作为“返回”“确定”选项。

六、逻辑设计

1)本游戏的主函数模块。游戏的主函数中首先初始化12864以及对产生随机食物位置的定时器初始化。随后进入死循环,随后显示汉字及选择光标,进入主界面,并根据不同的选择,显示不同的字符。当选择完毕,进入游戏,首先创建初始贪吃蛇,然后贪吃蛇移动,贪吃蛇死亡后,计算分数,并显示排行榜。

2)本游戏的按键模块。在游戏的按键模块中,首先根据静态变量判断此模塊在按键按下的情况下进入的次数,次数达标后,根据全局变量的记录,确定所在页面,进行变量操作。

3)LCDl2864显示模块。在主界面,用基本指令集操作。在贪吃蛇移动阶段,是扩充指令集操作模式,此时主要有两个函数,一个是当食物被吃后,通过用户按下键盘所产生的数当作随机数种子生成随机食物位置,另一个是通过按键产生的方向,决定贪吃蛇移动。

4)本游戏的蛇运动控制模块。通过按键提供贪吃蛇移动方向,使用液晶屏打点函数,在液晶屏上面画出贪吃蛇,通过难度控制变量,确定贪吃蛇更新速度,即让贪吃蛇移动速度提供了依据。

七、结语

贪吃蛇在电脑上实现、在手机上实现和在单片机上实现的原理和过程是完全不同的。所需要的基础也不同,在单片机上实现,需要有电路基础和c基础,并要了解液晶控制原理,才能在液晶屏上画图,让贪吃蛇在人们眼中呈现。但是经过不懈的努力,我们将其焊接并调试完成,达到具有可玩性的指标。

参考文献:

[1] (美)塞奇威克著,霍红卫译.算法——C语言实现.机械工业出版社.

[2] 阎石,清华大学电子学教研组.数字电子技术基础.第五版.高等教育出版社.

猜你喜欢
制作娱乐游戏
数独游戏
《计算机应用基础》微课设计与制作实践
疯狂的游戏
应用瀑布模型的MOOC制作方法
爆笑游戏
娱乐眼
第八章直接逃出游戏
娱乐眼
娱乐眼
娱乐眼