久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 11135|回復: 2
打印 上一主題 下一主題
收起左側

兩種單片機流水燈用按鍵控制暫停繼續的程序

[復制鏈接]
跳轉到指定樓層
樓主
ID:507222 發表于 2019-4-8 18:40 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
基于51單片機的流水燈按鍵控制關于按鍵控制暫停繼

單片機源程序如下:
  1. #include<reg52.h>
  2. #define uint unsigned int //定義int變量uint
  3. #define shuzu1 unsigned char
  4. #define shuzu2 unsigned char //定義兩個數組,實現兩種流水燈
  5. shuzu1 i;
  6. shuzu2 j; //數組 i,j變量
  7. shuzu1 code table1[]={0xfc,0xf9,0xf3,0xe7,
  8.                                     0xcf,0x9f,0x3f}; //數組1,每兩個流水燈亮
  9. shuzu2 code table2[]={0xfe,0xfd,0xfb,0xf7,
  10.                                         0xef,0xdf,0xbf,0x7f};//數組2,一位流水燈亮
  11. sbit k1=P3^2;
  12. sbit k2=P3^3;
  13. sbit k3=P3^4;
  14. sbit k4=P3^5; //定義四位數碼管函數名(k1,k2,k3,k4)
  15. void deng1(); //流水燈1的子函數
  16. void deng2(); //流水燈2的子函數
  17. void anjian(); //按鍵暫停繼續子函數
  18. void delay(uint z)
  19. {
  20.         uint i,j;
  21.         for(i=0;i<z;i++)
  22.         for(j=0;j<110;j++);
  23. } //延時函數
  24. void deng1()
  25. {
  26.         if(k1==0)
  27.         {
  28.                 delay(10);
  29.                 if(k1==0)
  30.                 {
  31.                         while(!k1); //判斷按鍵1是否按下,松手檢測
  32.                         for(i=0;i<=7;i++)
  33.                         {
  34.                         P1=table1[i];
  35.                 delay(500);//流水燈程序
  36.                         anjian();//按鍵暫停繼續子程序
  37.                                 if(k2==0)
  38.                                 {
  39.                                         delay(10);
  40.                                         if(k2==0)
  41.                                         {
  42.                                         deng2();//中途跳出燈1循環
  43.                                         }
  44.                                 }
  45.                         }
  46.                 }
  47.    }
  48. }
  49. void deng2()
  50. {
  51.         if(k2==0)
  52.         {
  53.                 delay(10);
  54.                 if(k2==0)
  55.                 {
  56.                         while(!k1);
  57.                         for(j=8;j>=0;j--)
  58.                         {
  59.                         P1=table2[j];
  60.                 delay(500);
  61.                         anjian();
  62.                                 if(k1==0)
  63.                                 {       
  64.                                         delay(10);
  65.                                         if(k1==0)
  66.                                         {
  67.                                         deng1();
  68.                                         }
  69.                                 }
  70.                         }
  71.                 }
  72.    }
  73. }
  74. void anjian()
  75. {
  76.         if(k3==0)
  77.         {
  78.                 delay(10);
  79.                 if(k3==0)
  80.                 {
  81.                         while(!k3);//判斷按鍵3是否按下,松手檢測                       
  82.                         while(1)//死循環,使流水燈暫停
  83.                 {
  84.                         if(k4==0);               
  85.                         if(k4==0)
  86.                         {
  87.                                 delay(10);
  88.                                 if(k4==0)
  89.                                         {
  90.                                                 while(!k4);
  91.                                                 break;//跳出死循環
  92.                                         }
  93.                         }
  94.                 }       
  95.                 }
  96.         }
  97. }
  98. void main()
  99. {
  100.         while(1)
  101.         {
  102.         deng1();
  103.         deng2();
  104.         anjian();//調用三個子函數
  105.         }
  106. }
復制代碼

所有資料51hei提供下載:
兩種流水燈按鍵控制暫停繼續.rar (37.99 KB, 下載次數: 25)


評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

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

使用道具 舉報

沙發
ID:496061 發表于 2019-4-8 20:16 | 只看該作者
樓主,你那個32行的代碼是不是有錯呀?小白不是很懂,你那個數組1里就6個數,為啥你的table1里面顯示是7個數呢?糾結
回復

使用道具 舉報

板凳
ID:507222 發表于 2019-4-8 20:42 來自手機 | 只看該作者
1035510176 發表于 2019-4-8 20:16
樓主,你那個32行的代碼是不是有錯呀?小白不是很懂,你那個數組1里就6個數,為啥你的table1里面顯示是7個 ...

數組1里是七個數,你可以再看看,
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 在线观看中文字幕 | 色综合99| 久久久久国产精品一区二区 | 成人三级电影 | 欧美中文字幕一区二区三区亚洲 | 国产视频一区二区 | 91极品视频 | 日韩激情免费 | 亚洲电影一区二区三区 | 日韩一区三区 | 精品国产一区二区三区性色 | 欧美一级高清片 | 久久久成人免费一区二区 | 99精品欧美一区二区蜜桃免费 | 亚洲精品在线观看网站 | 精品国产欧美 | www.日本精品 | 欧美视频第三页 | 国产精品久久精品 | aa级毛片毛片免费观看久 | 中文字幕免费在线 | 日韩高清中文字幕 | 亚洲一二三在线 | www.788.com色淫免费 | 久久久久久久久国产 | 国产精品一区二区三区在线 | 欧产日产国产精品99 | 色综合天天天天做夜夜夜夜做 | 人人干超碰 | 欧美国产日韩一区 | 日韩国产在线 | 男人天堂色 | 欧美在线一区二区三区 | 一级毛片在线播放 | 亚洲日本三级 | 麻豆一区一区三区四区 | 日批免费在线观看 | 国产一级黄色网 | 成人国产精品久久 | 91九色在线观看 | 999免费网站|