【Proteus仿真】【51单片机】贪吃蛇游戏-LCD12864
2023-12-13 14:57:59
一、功能简介
本项目使用Proteus8仿真51单片机控制器,使LCD12864液晶,按键等。
主要功能:
系统运行后,LCD12864液晶显示游戏界面,可通过K1-K4键控制蛇的运行方向;每当吃到实物得分加1;当蛇撞墙或撞身时,游戏结束,可按下复位键开始。
二、软件设计
/*
作者:嗨小易(QQVIP群2:570487280)
*/
#include <REG52.H>
#include <stdlib.h>
#include "ampire.h"
#include "Snake.h"
#include "Game.h"
int main()
{
EA = 1; //开启总中断
ET1 = 1; //开启定时器1中断
TMOD = 0x10; //使用定时器1
TH1 = 0xff; //高8位置0xff
TL1 = 0; //低8位置0,
TR1 = 1; //开启定时器
food_initate(); //食物位置的初始化
initate(); //显示器的初始化
print_gamemessage(); //打印游戏中的基本信息
initate_snake(); //蛇属性的初始化
while (1)
{
srand(TL1); //播种 TL1变化范围为(0~0xff)
snake_controll(); //蛇的控制
snake_movee(); //蛇的移动
food_touch(); //判断蛇是否吃掉食物
snake_printf(); //显示蛇
if (game_over()) //游戏结束条件判断
{
break;
}
score_display(); //打印目前所得的分数
food_display(); //显示食物
delay(50); //延迟50ms
snack_clear(); //蛇尾清除
}
while (1)
{
}
}
//中断,重置定时器
void timerl() interrupt 3
{
TR1 = 0; //关闭定时器
TH1 = 0xff; //重置定时器的高位和低位
TL1 = 0;
TR1 = 1; //开启定时器
}
三、实验现象
B站演示视频:https://space.bilibili.com/444388619
联系作者
视频地址:https://space.bilibili.com/444388619/video
专注于51单片机、STM32、国产32、DSP、Proteus、arduino、ESP32、物联网软件开发,PCB设计,视频分享,技术交流。
文章来源:https://blog.csdn.net/Hello_Muyi/article/details/134970046
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!