目录
具体实现功能
设计介绍
51单片机简介
资料内容
仿真实现(protues8.7)
程序(Keil5)
全部内容
资料获取
具体实现功能
利用单片机8*8点阵实现贪吃蛇游戏的控制。
仿真演示视频:
51-基于51单片机的贪吃蛇游戏-仿真视频
设计介绍
51单片机简介
51单片是一种低功耗、高性能CMOS-8位微控制器,拥有灵巧的8位CPU和可编程Flash,使得51单片机为众多嵌入式控制应用系统提供灵活、高效的解决方案。
本设计所使用的芯片可兼容以下所有的51系列单片机(包括AT系列和STC系列)。
资料内容
仿真实现(protues8.7)
本设计利用protues8.7软件实现仿真设计,具体如图。
程序(Keil5)
本设计利用KEIL5软件实现程序设计。
主函数如下:
///
/*****************
主程序
*****************/
void main(void)
{
e=SPEED;
P0=0x00;
P1=0xff;
P2=0x00;
P3=0x00;
while(1)
{
//if(keyenable==1){P1=0x00;P2=0xff;}else{P1=0xff;P2=0x00;}
for(i=3;i<SNAKE+1;i++)
x[i]=100;
for(i=3;i<SNAKE+1;i++)
y[i]=100;//初始化
x[0]=4;
y[0]=4; //果子
n=3; //蛇长 n=-1
x[1]=1;
y[1]=0; //蛇头
x[2]=0;
y[2]=0; //蛇尾1
addx=0;
addy=0; //位移偏移
//k=1;
while(1)
{
if(keyenable)
break;
timer0(1);
}
while(1)
{
timer0(e);
if(knock())
{
e=SPEED;
break;
} //判断碰撞
if((x[0]==x[1]+addx)&(y[0]==y[1]+addy)) //是否吃东西
{
n++;
if(n==SNAKE+1)
{
n=3;e=e-10;
for(i=3;i<SNAKE+1;i++)
x[i]=100;
for(i=3;i<SNAKE+1;i++)
y[i]=100;
}
x[0]=x[n-2];
y[0]=y[n-2];
}
for(i=n-1;i>1;i--)
{
x[i]=x[i-1];
y[i]=y[i-1];
}
//x[n-1]=x[2];y[n-1]=y[2];
x[1]=x[2]+addx;y[1]=y[2]+addy; //移动
}
}
}
程序运行结果如图:
全部内容
全部资料包括程序(keil5)、protues仿真(protues8.7)、开发资料、资料使用介绍、仿真视频、程序讲解视频、仿真讲解视频、最小系统介绍视频等。
资料获取
https://docs.qq.com/doc/DT1Jsa2Jkb0VRaU1z