wwwxxx国产_337p日本欧洲亚洲大胆张筱雨_免费在线看成人av_日本黄色不卡视频_国产精品成熟老女人_99视频一区_亚洲精品97久久中文字幕_免费精品视频在线_亚洲色图欧美视频_欧美一区二三区

 找回密碼
 立即注冊(cè)

QQ登錄

只需一步,快速開(kāi)始

搜索
查看: 7094|回復(fù): 2
打印 上一主題 下一主題
收起左側(cè)

c51單片機(jī)自制貪吃蛇游戲機(jī) 含程序代碼

[復(fù)制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:671091 發(fā)表于 2019-12-23 14:54 | 只看該作者 |只看大圖 回帖獎(jiǎng)勵(lì) |倒序?yàn)g覽 |閱讀模式
制作出來(lái)的貪吃蛇游戲機(jī)實(shí)物圖如下:


單片機(jī)源程序如下:
  1. #include"snake.h"
  2. #include<stdlib.h>
  3. #include"key.h"
  4. #include"display.h"
  5. #include"main.h"
  6. #include"delay.h"
  7. ///////////////////////////////////////////////
  8. ///////////////     貪吃蛇     ////////////////
  9. ///////////////////////////////////////////////


  10. void setDir(u8 *dir_1,u8 *dir_2,u8 value){
  11.         *dir_1 = 0;
  12.         *dir_2 = value;
  13. }

  14. void setHead(u8 *z,u8 dir){
  15.         *z+=dir;
  16.         if(*z == -1)*z = 7;
  17.         else if(*z == 8)*z = 0;
  18. }

  19. void moveSnakeXY(u8 *snakeXY,const u8 num,const u8 XY){
  20.         u8 i = 0;
  21.         while(i<num-1){
  22.                 snakeXY[i] = snakeXY[i+1];
  23.                 i++;
  24.         }
  25.         snakeXY[i] = XY;
  26. }

  27. void changeLED(u8 (*led)[LED_WIDTH],const u8 *x,const u8 *y,u8 num,u8 apx,u8 apy){
  28.         int i = 0;
  29.         cleanLED(led);
  30.         while(i < num){
  31.                  led[y[i]][x[i]] = 1;
  32.                 i++;
  33.         }
  34.         led[apy][apx] = 1;                                                                                                                                                 
  35. }

  36. void randXY(u8 *x,u8 *y,u8 (*led)[LED_WIDTH],u8 t){
  37.         srand(t);
  38.         do{
  39.                  *x = rand()%8;
  40.                 *y = rand()%8;
  41.         }while(led[*y][*x]); //若這個(gè)點(diǎn)上面為1,則繼續(xù),直到這個(gè)點(diǎn)上面為空
  42.         led[*y][*x] = 1;
  43. }
  44. void showDegree(u8 degree){
  45.         u8 i,j;
  46.         for(i = 0;i<LED_HEIGHT;i++)
  47.                 for(j = 0;j<=degree;j++)
  48.                         setPoint(j,i);       
  49. }
  50. u8 Snake(void){
  51.         #define BLOCKNUM 64        //蛇身數(shù)組大小
  52.         u8 degree = 0,snakeNum = 1,dirX = 1,dirY = 0,dirOX,dirOY; //難度等級(jí),當(dāng)前蛇身長(zhǎng)度,方向變量
  53.         u8 LED[LED_HEIGHT][LED_WIDTH];//界面顯示矩陣
  54.         u8 headX = 0,headY = 0,appleX,appleY;        //蛇頭位置變量   食物位置變量
  55.         u8 t,time; //移動(dòng)速度控制變量
  56.         u8 r = 0;
  57.         //蛇身位置數(shù)組
  58.         u8 snakeX[BLOCKNUM];
  59.         u8 snakeY[BLOCKNUM];
  60.         while(1){ //難度選擇
  61.                 showDegree(degree);
  62.                 if(keySelect())
  63.                         if(degree<7)degree++;
  64.                         else degree = 0;
  65.                 else if(keyStart())break;
  66.         }       
  67.         time = 100-degree*10;//延時(shí)長(zhǎng)度
  68.         cleanLED(LED);//清屏
  69.         LED[headY][headX] = 1;//顯示蛇頭
  70.         //將蛇頭保存到數(shù)組第一位
  71.         snakeX[0] = headX;
  72.         snakeY[0] = headY;
  73.         //運(yùn)動(dòng)方向初始化
  74.         dirOX = dirX;
  75.         dirOY = dirY;
  76.         //隨機(jī)食物出現(xiàn)的位置
  77.         randXY(&appleX,&appleY,LED,t);
  78.         t = 0;
  79.         while(1){
  80.                 /*
  81.                   游戲主循環(huán)
  82.                 */
  83.                 display(LED);//顯示       
  84. //                //按鍵操作檢測(cè),防止多余的按鍵判斷,獲取最近一次的方向               
  85.                 if(dirY!=-1 && (keyUP()||keyY()))setDir(&dirX,&dirY,-1);
  86.                 else if(dirY!=1 &&(keyDOWN()||keyA()))setDir(&dirX,&dirY,1);
  87.                 else if(dirX!=-1 &&(keyLEFT()||keyX()))setDir(&dirY,&dirX,-1);
  88.                 else if(dirX!=1 &&(keyRIGHT()||keyB()))setDir(&dirY,&dirX,1);
  89.                
  90.                 //暫停
  91.                 if(keyStart())
  92.                         while(!keyStart())
  93.                                 display(LED);
  94.                                                                 
  95.                 /*
  96.                         每隔一定時(shí)間進(jìn)行移動(dòng)
  97.                         以下代碼功能為移動(dòng)判斷與移動(dòng)操作
  98.                 */
  99.                 r++;//時(shí)間種子
  100.                 if(t++ >time){         //間隔性的移動(dòng)
  101.                         t = 0;
  102.                         if((dirX!=0 && dirOX ==0)||(dirY!=0 && dirOY==0)){//合法方向輸入引用
  103.                                  dirOX = dirX;
  104.                                 dirOY = dirY;
  105.                         }                               
  106.                         setHead(&headX,dirOX);        //按照合法的輸入方向提前運(yùn)動(dòng)一次
  107.                         setHead(&headY,dirOY);                       
  108.                         if(headY == appleY && headX == appleX){                //若蛇頭運(yùn)行的下一位是食物
  109.                                         //數(shù)組加長(zhǎng)
  110.                                         snakeNum++;
  111.                                          snakeX[snakeNum-1] = appleX;
  112.                                         snakeY[snakeNum-1] = appleY;
  113.                                         //下一個(gè)蘋(píng)果
  114.                                         randXY(&appleX,&appleY,LED,r);
  115.                         }else if(!LED[headY][headX]){                                //若前方為無(wú)障礙物
  116.                                  //前方無(wú)障礙
  117.                                 moveSnakeXY(snakeX,snakeNum,headX);
  118.                                 moveSnakeXY(snakeY,snakeNum,headY);
  119.                         }else if(headX == snakeX[0]&& headY == snakeY[0]){//
  120.                                 moveSnakeXY(snakeX,snakeNum,headX);
  121.                                 moveSnakeXY(snakeY,snakeNum,headY);
  122.                         }else {                                //若前方有障礙物體,則觸發(fā)蜂鳴器并返回錯(cuò)誤值                       
  123.                                 return GAMEOVER;
  124.                         }
  125.                         changeLED(LED,snakeX,snakeY,snakeNum,appleX,appleY);//顯示矩陣刷新
  126.                 }
  127.         }
  128.         return GAMEOVER;//游戲結(jié)束,返回錯(cuò)誤信息
  129. }                                                                                                        
復(fù)制代碼

所有資料51hei提供下載:
自制貪吃蛇游戲機(jī)資料.7z (80.24 KB, 下載次數(shù): 38)


1555753858494.jpeg (734.54 KB, 下載次數(shù): 171)

1555753858494.jpeg

1555753874610.jpeg (420.95 KB, 下載次數(shù): 166)

1555753874610.jpeg

1555753868443.jpeg (311.43 KB, 下載次數(shù): 180)

1555753868443.jpeg

1555753883588.jpeg (646.15 KB, 下載次數(shù): 172)

1555753883588.jpeg

Screenshot_20180517-123331.png (351.7 KB, 下載次數(shù): 181)

Screenshot_20180517-123331.png

Screenshot_20180517-123316.JPG (143.54 KB, 下載次數(shù): 168)

Screenshot_20180517-123316.JPG

Screenshot_20180517-122805.png (670.85 KB, 下載次數(shù): 210)

Screenshot_20180517-122805.png

接線圖.jpg (493.49 KB, 下載次數(shù): 166)

接線圖.jpg

評(píng)分

參與人數(shù) 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎(jiǎng)勵(lì)!

查看全部評(píng)分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏5 分享淘帖 頂 踩

相關(guān)帖子

回復(fù)

使用道具 舉報(bào)

沙發(fā)
ID:1013589 發(fā)表于 2022-3-28 08:22 | 只看該作者
天!死亡走線!
(但是還是好強(qiáng))
回復(fù)

使用道具 舉報(bào)

板凳
ID:977804 發(fā)表于 2022-3-28 21:08 來(lái)自觸屏版 | 只看該作者
方格點(diǎn)陣感覺(jué)比圓點(diǎn)舒服
回復(fù)

使用道具 舉報(bào)

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機(jī)教程網(wǎng)

快速回復(fù) 返回頂部 返回列表
爽成人777777婷婷| 伊人av综合网| 精品亚洲欧美一区| 九色丨蝌蚪丨成人| 77导航福利在线| 尤物视频..com| 一级欧美一级日韩| 在线不卡av电影| 久久国产色av免费观看| 久久精品国产精品青草色艺 | 日韩av电影免费播放| 久久99久久亚洲国产| 欧美久久久久久久久久| 国产精品热久久久久夜色精品三区| 亚洲精品影视| 久久悠悠精品综合网| a√中文在线观看| 国产超碰在线观看| 尤物视频在线| 视频一区 中文字幕| 久久精品视频日本| 亚洲欧美色图视频| 亚洲色欲综合一区二区三区| 日本精品二区| 国产在线精品自拍| 欧美激情在线观看视频| 日韩精品极品视频| 在线观看亚洲专区| 亚洲自拍偷拍九九九| 成人18视频在线播放| 一区二区三区精品视频在线观看 | 浮妇高潮喷白浆视频| 一本大道av一区二区在线播放| 国产精品一区二区在线看| 国产在线成人| 欧美三级情趣内衣| 91成人短视频| 成人深夜福利| 免费看男女www网站入口在线| 999在线视频| 宅男深夜视频| 天天摸日日操| 日本视频免费| 国产精品9区| 一区二区不卡久久精品| 亚洲av无码一区二区三区dv| 久久久久在线视频| 69精品久久久| 青娱乐91视频| 日本福利片在线观看| 大又大又粗又硬又爽少妇毛片 | 亚洲一区自拍| 国产精品啊啊啊| 精品大片一区二区| 亚洲va久久| 亚洲精品影片| 欧美国产中文高清| 91精品国产一区二区在线观看 | 国产黄色成人av| 奇米色一区二区| 丝袜诱惑制服诱惑色一区在线观看 | 国产日本欧美在线| 亚洲国产一区二区精品视频| 久久免费视频1| 国产精品一区二区在线观看| 91理论片午午论夜理片久久| 国产乱肥老妇国产一区二| 欧美一级淫片videoshd| 羞羞色国产精品| 欧美黑人国产人伦爽爽爽| 色偷偷av亚洲男人的天堂| 亚洲视频国产视频| 色诱女教师一区二区三区| 伊人伊成久久人综合网小说| 国产一区二区三区久久精品| 中文字幕亚洲欧美| 日韩有码在线播放| 日韩亚洲欧美成人| 欧美国产日韩一区二区| 91福利视频网| 国产精品成人av在线| 国产精品白嫩初高中害羞小美女| 国产在线999| 国产免费一区二区三区在线能观看 | 日本成片免费高清| av先锋影音少妇| 天天看天天操| 污导航在线观看| 成人p站proumb入口| 欧美成年黄网站色视频| 99视频免费在线观看| 国模雨婷捆绑高清在线| 无遮挡在线观看| 国产69精品久久久久9999人| 亚洲国产精品免费视频| 婷婷精品在线| 中文字幕人成人乱码| 久久精品在线| 国产精品乡下勾搭老头1| 久久久蜜桃精品| 亚洲一区在线免费观看| 欧洲日韩一区二区三区| 日韩欧美色综合| 最近2019中文免费高清视频观看www99| 欧美国产日韩一区二区在线观看| 国产精品视频午夜| 精品在线不卡| 成人毛片一区二区| 蜜桃色一区二区三区| ass极品国模人体欣赏| 超碰超碰超碰超碰| 欧美 中文字幕| 黄视频在线观看www| 最新亚洲伊人网| 污视频网站在线免费| 国产精久久一区二区| 日韩免费高清| 麻豆国产欧美一区二区三区| 国产精品久久久久影院亚瑟| 欧美午夜宅男影院| 中文字幕一区电影| 成人免费激情视频| 亚洲剧情一区二区| 久久97久久97精品免视看| 国产综合在线观看视频| 一区二区91美女张开腿让人桶| 国产男女激情视频| 精品亚洲aⅴ无码一区二区三区| 国产精品男女视频| 久草视频免费看| 91免费日韩| 国产蜜臀av在线播放| 久久香蕉网站| 日韩国产高清在线| 日韩一区日韩二区| 精品国产欧美一区二区| 91高清免费视频| 亚洲精品在线观看免费| 深夜福利网站在线观看| 日本少妇全体裸体洗澡| 亚洲日韩第九十九页| 九草视频在线观看| 二区三区不卡| 97精品视频在线看| 99精品偷自拍| 在线成人av网站| 午夜精品视频网站| 亚洲一区二区精品在线观看| 久久久久亚洲av无码麻豆| 日韩欧美亚洲视频| 欧美1区二区三区公司| 日韩精品视频在线观看一区二区三区| 香蕉成人影院| 亚洲国产二区| 中文字幕一区二区三区四区不卡| 亚洲国产欧美一区| 147欧美人体大胆444| 男女曰b免费视频| 免费看一级一片| 国产剧情麻豆剧果冻传媒视频免费| 国产在线视频你懂得| 18国产精品| 国产精品 欧美精品| 欧美日韩国产首页在线观看| 91国产视频在线播放| 黄色成人在线免费观看| 懂色av粉嫩av蜜臀av一区二区三区| 色wwwwww| 福利视频在线看| 美女久久久久| 久久综合狠狠综合久久综合88 | 久久久久麻豆v国产| 亚洲成年人电影在线观看| 轻轻色免费在线视频| 97人人澡人人爽91综合色| 久久成人麻豆午夜电影| 色激情天天射综合网| 26uuu亚洲国产精品| 日韩xxxx视频| 国产午夜激情视频| 比比资源先锋| 日韩专区视频网站| 毛片av中文字幕一区二区| 欧美日韩亚州综合| 国产三级精品网站| 毛毛毛毛毛毛毛片123| 国产精品无码天天爽视频| 黄网站app在线观看下载视频大全官网 | 日韩精品一区第一页| 色悠久久久久综合欧美99| 国产成人在线一区| 少妇一级淫免费放| 国产suv精品一区二区69| 一区 二区 三区| 四虎884aa成人精品最新| 97久久超碰精品国产| 日韩精品在线视频| 亚洲精品一区二区三区蜜桃久| 91狠狠综合久久久| www.操操| 欧美特黄不卡| 久久久久国产精品麻豆ai换脸| 亚洲精品视频在线播放| 日韩一区二区电影在线观看| 一区二区三区影视| www.老鸭窝.com| 国产精品欧美大片| 国产精品久久久久久亚洲伦 | 亚洲成av人片一区二区梦乃| 国产综合在线看| 538任你躁在线精品免费| www.香蕉视频| 超碰在线无需免费| 日韩激情中文字幕| 亚洲成人激情在线观看| 成人手机视频在线| 男人天堂av在线播放| 激情综合闲人网| 在线日韩中文| 精品日韩一区二区三区| 在线丝袜欧美日韩制服| 色一情一乱一伦| www.视频在线.com| 久久久精品性| 亚洲成人精品视频| 日韩激情av在线免费观看| 欧美少妇在线观看| 91国偷自产中文字幕久久| 日韩免费网站| 日本大胆欧美人术艺术动态| 亚洲精品一区中文| 国产va亚洲va在线va| 刘亦菲毛片一区二区三区| 日韩在线伦理| 91美女蜜桃在线| 97视频在线观看免费高清完整版在线观看 | 99久久婷婷国产综合精品青牛牛 | 极品日韩av| 日韩成人小视频| 极品美女扒开粉嫩小泬| 天堂av手机版| 亚洲一区二区三区久久久| 国产欧美va欧美不卡在线| 国产精品黄色av| 刘亦菲国产毛片bd| 一起操在线观看| 日韩中文字幕av电影| 国产一区二区免费| 国产传媒免费观看| 天堂www在线а√天堂| 日韩有码一区| 在线免费精品视频| 奇米777四色影视在线看| 黄频网站在线观看| 久久精品资源| 亚洲精品视频观看| 国产在线一区二区三区四区| 亚洲国产无线乱码在线观看 | 99久久精品一区二区| 青青a在线精品免费观看| www.自拍偷拍| 日本女优北野望在线电影| 亚洲国产第一| 久久精视频免费在线久久完整在线看| 992tv人人草| 97在线免费| 亚洲中字在线| 欧美成人自拍视频| 成人无码www在线看免费| 午夜黄色一级片| 麻豆免费精品视频| 91a在线视频| 亚洲一区电影在线观看| 第九色区av在线| 成人一道本在线| 成人日韩av在线| 久草视频一区二区| 亚洲精品永久免费视频| 一区二区三区精品视频在线| 精品精品欲导航| 天天夜碰日日摸日日澡性色av| 久久性生活视频| 国产精品美女久久久久久不卡 | jjzzjjzzjjzz| 国产日韩欧美一区在线 | 青青在线免费观看| 久久er这里只有精品| 欧美电影《睫毛膏》| 国产网站欧美日韩免费精品在线观看| 91蝌蚪视频在线| 污导航在线观看| 不卡电影一区二区三区| 成人有码在线视频| 国产露脸91国语对白| silk一区二区三区精品视频 | 成人免费观看男女羞羞视频| 国产精品第100页| 亚洲天堂五月天| 日本久久伊人| 日韩精品在线一区二区| 国产伦精品一区二区三区妓女下载 | 青青在线精品| 欧美色爱综合网| 91小视频在线播放| 在线免费观看av网站| www.久久久久久久久| 久久国产一区| 日韩精品免费一区二区| 狠狠色综合网| 国产97在线亚洲| 艳妇乳肉豪妇荡乳av无码福利 | 亚洲大片精品永久免费| 97在线国产视频| 夜夜操 天天操| 国产九色精品成人porny| 成人综合电影| 九九久久久2| 99精品国产福利在线观看免费 | 日韩欧美高清在线| 尤物网站在线观看| a视频在线免费看| 粉嫩av一区二区三区免费野| 天堂在线资源视频| 色就是色亚洲色图| 亚洲欧洲三级电影| 欧美视频在线免费播放| 啦啦啦在线视频免费观看高清中文 | 成人午夜亚洲| 精品人在线二区三区| 1024手机在线观看你懂的| 51精品视频| 丝袜亚洲另类欧美综合| 国产精品www| 成人午夜福利视频| 夜夜嗨网站十八久久| 成人动漫网站在线观看| 日日夜夜精品免费| 亚洲欧美日本日韩| 国产精品10p综合二区| 亚洲AV成人无码一二三区在线| 国产一在线精品一区在线观看| 国产精品自拍网| 先锋影音中文字幕| 久久国产生活片100| 日本一区二区三区免费看| 狠狠色噜噜狠狠狠888奇米| 99久久婷婷国产综合精品| 欧美日韩在线免费观看视频| 男女无套免费网站| 欧美经典一区二区| 欧美精品久久久久久久自慰| 绯色av一区二区| 亚洲综合图片区| 亚洲精品激情视频| 亚洲欧洲美洲av| 亚洲国产高潮在线观看| 激情五月少妇a| 香蕉精品久久| 久久乐国产精品| 欧美自拍偷拍第一页| 男人操女人的视频在线观看欧美| 日本视频一区在线观看| av日韩在线免费| 依依成人综合视频| 欧美丰满熟妇bbb久久久| a日韩av网址| 色诱女教师一区二区三区| 国产情侣av在线| 久久99伊人| 亚洲一区二区三区精品视频| 免费在线观看麻豆视频 | 蜜桃精品视频在线| 一区二区精品在线观看| 美女av网站| 一本到三区不卡视频| 亚洲一二三在线观看| 欧美成人专区| 国产精品第一第二| 轻轻操 在线观看| 中文字幕亚洲自拍| 久久久久久久久久成人| 国产精品av一区二区| 91久久久在线| 国产精品久久久久影院日本| 中文字幕日韩欧美| 精品国产区一区| 欧美一区二区三区小说| 亚洲最快最全在线视频| 久久亚洲一级片| 国产成人在线视频网站| 久久精品国产77777蜜臀| 国产美女精品| 黄色综合网站| 久久99精品国产.久久久久| 中文字幕在线中文字幕日亚韩一区| 国产传媒视频在线观看| 欧美日韩你懂的| 一区二区三区视频免费看| 午夜电影亚洲| 日韩妆和欧美的一区二区|