• 方案介紹
    • 1.? 簡介
    • 2.? 主要功能
    • 3.? 源程序(Keil5)
    • 4.? 仿真proteus8.6
    • 5.? 設(shè)計(jì)報(bào)告
    • 6.? 資料清單
    • 7.? 資料獲取鏈接
  • 附件下載
  • 相關(guān)推薦
申請入駐 產(chǎn)業(yè)圖譜

基于51單片機(jī)的簡易貪吃蛇設(shè)計(jì)(二)

04/28 10:31
289
加入交流群
掃碼加入
獲取工程師必備禮包
參與熱點(diǎn)資訊討論

單片機(jī)仿真設(shè)計(jì)合集資料獲取.pdf

共1個文件

資料清單:C程序+仿真+設(shè)計(jì)報(bào)告+使用說明+元件清單+操作視頻

仿真版本:Proteus8.6及以上版本

程序編譯:Keil5 C51

編程語言:C語言

設(shè)計(jì)編號:【Z04】

1.? 簡介

? 本文提出了一種基于51單片機(jī)的貪吃蛇設(shè)計(jì)。本系統(tǒng)由AT89C51單片機(jī)為控制核心,制作一個8*8點(diǎn)陣的貪吃蛇游戲,通過LED點(diǎn)陣屏為載體顯示數(shù)據(jù),并用四個輸入端表示四個控制鍵(上下左右)。系統(tǒng)硬件部分由AT89C51片機(jī),8*8點(diǎn)陣屏,4個按鍵,軟件部分在keil環(huán)境下用c51語言編寫,包括游戲初始蛇的段數(shù),以及障礙墻壁,游戲結(jié)束時自動復(fù)位。

2.? 主要功能

a.支持8*8點(diǎn)陣顯示移動軌跡。

b. 支持按鍵實(shí)現(xiàn)啟停、上下左右移動。

c. 支持蜂鳴器顯示報(bào)警信息。

3.? 源程序(Keil5)

本設(shè)計(jì)采用keil5 C51軟件(內(nèi)附安裝包)實(shí)現(xiàn)程序設(shè)計(jì)。如需用keil4打開程序,可自行通過.c和.h文件新建工程即可。

//定義方向   
sbit  left=P3^3;    //左
sbit  down=P3^4;    //下
sbit right=P3^5;    //右
sbit  up=P3^6;      //上

unsigned char x[SNAKE+1];			 //蛇身的坐標(biāo) 行
unsigned char y[SNAKE+1];          	   //蛇身的坐標(biāo) 列
unsigned char time,n,i,e;              //延時時間,當(dāng)前蛇長,通用循環(huán)變量,當(dāng)前速度		
char addx,addy;                // 移動方向,同直角坐標(biāo)系,addx為橫向,addy為縱向
bit again  ;//再次產(chǎn)生果實(shí)變量,
 

//延時程序

void delay(char MS)
{
  while(MS--)
  ;

 }
void delay_1ms(uint xms)//延時函數(shù),有參函數(shù)
{
              uint x,y;
              for(x=xms;x>0;x--)
              for(y=124;y>0;y--);
}

//判斷碰撞

bit knock()
{   bit k;
      k=0;
      if(x[1]>7||y[1]>7)  { k=1;}                             //撞墻
     for(i=2;i<n;i++)
	   if((x[1]==x[i])&(y[1]==y[i]))    {k=1; } //撞自己
    return k;	
}


//鍵位處理

void turnkey()
{
   if(right==0)     {addy=0;   if(addx!=-1)  addx=1;           else   addx=-1;}
     if(left==0)      {addy=0;  if(addx!=1)  addx=-1;         else addx=1;}
       if(down==0)     {addx=0;   if(addy!=1)   addy=-1;       else addy=1;}
        if(up==0)      {addx=0;   if(addy!=-1)   addy=1;   else addy=-1;}
}

4.? 仿真proteus8.6

? 本設(shè)計(jì)采用proteus8.6軟件(內(nèi)附安裝包)實(shí)現(xiàn)仿真設(shè)計(jì),如下圖所示。proteus軟件一般存在高低版本兼容問題,該仿真是通過proteus8.6導(dǎo)出的,所以請盡量使用proteus8.6打開文件,低于proteus8.6的版本不能夠正常使用,高于proteus8.6的版本除了proteus8.8/8.9理論上可以正常使用。

仿真界面:

5.? 設(shè)計(jì)報(bào)告

設(shè)計(jì)報(bào)告主要包括硬件電路、軟件設(shè)計(jì)、仿真調(diào)試等等,僅供參考。

6.? 資料清單

設(shè)計(jì)資料主要包括C程序+仿真+設(shè)計(jì)報(bào)告+使用說明+元件清單+操作視頻等。

7.? 資料獲取鏈接

百度網(wǎng)盤下載鏈接:【Z04】百度網(wǎng)盤下載鏈接

更多單片機(jī)仿真設(shè)計(jì)合集:單片機(jī)仿真設(shè)計(jì)合集

  • 單片機(jī)仿真設(shè)計(jì)合集資料獲取.pdf
    下載

相關(guān)推薦