全球旧事资料 分类
电气与信息工程学院
单片机课程设计报告
设计题目:基于单片机的贪吃蛇设计
专业:学生姓名:班级:指导教师:成绩:
一、设计任务及要求
2016年11月22日
基本功能:
制作一个88点阵的贪吃蛇游戏,系统以单片机的C语言的软件设计,系统通
过LED点阵屏为载体显示数据,并用五个输入端表示五个控制键(上下左右及加速)。
系统硬件部分由STC89C52RC单片机,88点阵屏,5个按键,软件部分在keil环
境下用C51语言编写,包括游戏初始化蛇的节数,以及障碍墙壁,游戏结束时自动
复位。
具体要求:
1、用四个按钮控制贪吃蛇的行径,一个按钮控制贪吃蛇的加速,蛇的初始长
度为2点,设置墙壁。
2、蛇吃到长度为1点的食物时,自身长度增加1点。
2、速度按钮带有一次加速,按两下速度按钮蛇的行进速度回到初始值。
3、当蛇碰到墙壁或自己的身体时游戏结束。
4、用proteus设计,仿真基于STC89C52RC单片机的8x8点阵贪吃蛇的硬件电
f路。5、游戏结束,系统自动复位。
二、硬件电路设计
本系统以STC89C52RC为核心,设置12MHz的晶振,使得单片机有合理的运行速度。LED点阵屏通过LED发光二极管组成,以灯珠亮灭来显示程序的运行情况,是模块化的显示组件,本设计采用88共阳红色点阵显示屏,用来显示贪吃蛇的游戏画面。五个独立按键控制蛇的游走方向上下左右和加速减速的功能。贪吃蛇是一款经典的小游戏,玩家通过按键操控贪吃蛇不断地吃食物,蛇身逐渐伸长,当蛇碰到蛇身和墙壁时游戏结束。需要注意的是实际元件中,点阵的封装不尽相同,因此需要测试出每个引脚的功能,以便正确连线。注意,每个像素点的额定电压在3v左右,电压过大将会彻底损坏。
三、系统软件设计
软件方面采用了C51编写代码,代码编写模块如下图:
核心代码主要为游戏处理、信息处理和按键处理。编写游戏的功能代码,先定义游戏的数据结构和常量。其中食物的数据结构采用结构体定义,两个u
sig
edchar变量分别定义为食物的横纵坐标;蛇的身体定义为长度最大值为20的数组,游戏中贪吃蛇长度达到39,游戏通关结束。
游戏处理模块为贪吃蛇在游玩过程中遇到的需要被处理的情况,主要实现的功能包括以下四个方面,即移动、食物、死亡和加速。
1、移动
f开始
是否按
下方向
键N
Y
将节点坐标覆盖到前一节点
N
蛇头节点横坐标对应加减
按键的方向是水平
Y
蛇头节点纵坐标对应加减
结束
游戏开始后,贪吃蛇在固定的周期内会向前移动一格,此时“贪吃蛇”身体从尾巴至头部每一个后r
好听全球资料 返回顶部