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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

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

單片機中斷系統控制流水、跑馬燈

[復制鏈接]
跳轉到指定樓層
樓主
ID:703953 發表于 2020-3-27 17:05 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
  1. #include<AT89X52.H>
  2. void DelayMs(unsigned int n);
  3. void DelayMs(unsigned int n)
  4. {
  5.         static unsigned int i;
  6.         while(n--)
  7.         {
  8.                 for(i=0;i<89;i++);
  9.         }
  10. }
  11. unsigned char LEDState=0;
  12. int main()
  13. {
  14.         unsigned char j;
  15.         IT0=1;//下降沿觸發中斷
  16.         EX0=1;//INT中斷允許
  17.         EA=1;//總中斷允許
  18.         PX0=1;//INT0中斷優先級為低級
  19.        
  20.         IT1=1;//下降沿觸發中斷
  21.         EX1=1;//INT中斷允許
  22.         PX1=1;//INT0中斷優先級為低級
  23.        
  24.         while(1)
  25.         {
  26.                 /*if(P1_0==0)//按鍵按下
  27.                         {
  28.                                 DelayMs(10);
  29.                                 //等待按鍵抬起,直到按鍵抬起為止
  30.                                 while(P1_0==0);
  31.                                 //消抖
  32.                                 DelayMs(10);//按鍵抬起以后做的事
  33.                                 LEDState=(LEDState+1)%5;
  34.                         }
  35.                
  36.                 else if(P1_1==0)//按鍵按下 反向
  37.                         {
  38.                                 DelayMs(10);
  39.                                 //等待按鍵抬起,直到按鍵抬起為止
  40.                                 while(P1_1==0);
  41.                                 //消抖
  42.                                 DelayMs(10);//按鍵抬起以后做的事
  43.                                 LEDState=(LEDState+5-1)%5;       
  44.                         }
  45.                         */
  46.                
  47.                
  48.                
  49.                
  50.                   if(LEDState==0)//閃爍
  51.                 {
  52.                         P2=0X00;
  53.                         DelayMs(100);
  54.                         P2=~P2;
  55.                         DelayMs(100);
  56.                 }
  57.                 else if(LEDState==1)//上到下跑馬
  58.                 {
  59.                         for(j=0;j<8;j++)
  60.                         {
  61.                                 P2=~(1<<j);
  62.                                 DelayMs(100);
  63.                         }
  64.                 }
  65.                 else if(LEDState==2)//下到上跑馬
  66.                 {
  67.                         for(j=0;j<8;j++)
  68.                         {
  69.                                 P2=~(1<<(7-j));
  70.                                 DelayMs(100);
  71.                         }
  72.                 }
  73.                 else if(LEDState==3)//上到下流水
  74.                 {
  75.                         P2=0XFF;
  76.                         for(j=0;j<8;j++)
  77.                         {
  78.                                 P2=P2&(~(1<<j));
  79.                                 DelayMs(100);
  80.                         }
  81.                         for(j=0;j<8;j++)
  82.                         {
  83.                                 P2=P2|(1<<j);
  84.                                 DelayMs(100);
  85.                         }       
  86.                 }
  87.                 else if(LEDState==4)//下到上流水
  88.                 {
  89.                         P2=0XFF;
  90.                         for(j=0;j<8;j++)
  91.                         {
  92.                                 P2=P2&(~(1<<(7-j)));
  93.                                 DelayMs(100);
  94.                         }
  95.                         for(j=0;j<8;j++)
  96.                         {
  97.                                         P2=P2|(1<<(7-j));
  98.                                         DelayMs(100);
  99.                         }
  100.                 }
  101.         }
  102. }
  103.                

  104.                 void INT_0(void) interrupt 0
  105.                 {
  106.                         LEDState=(LEDState+1)%5;
  107.                 }
  108.                
  109.                
  110.                 void INT_1(void) interrupt 2
  111.                 {
  112.                         LEDState=(LEDState+5-1)%5;       
  113.                 }
復制代碼


中斷控制流水跑馬燈.zip

80.17 KB, 下載次數: 11, 下載積分: 黑幣 -5

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

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 欧美一级大片免费看 | 欧美日韩高清一区 | 黄色一级毛片 | 国家一级黄色片 | 中文字幕在线播放不卡 | 国产精品一区二区视频 | 日本在线视频一区二区 | 在线免费小视频 | 一区中文字幕 | 国产一级视频在线播放 | 中文字幕av一区 | 在线观看亚 | 日韩欧美一区二区三区免费观看 | 精品久久久久久亚洲综合网 | 99精品久久久久久中文字幕 | 国产在线精品一区二区 | 中文字幕在线一区二区三区 | 中文字幕在线不卡 | 色综合天天天天做夜夜夜夜做 | 91精品久久久久久久久中文字幕 | www.一区二区三区.com | 美女黄网站 | 黄色一级大片在线免费看产 | 另类 综合 日韩 欧美 亚洲 | 狠狠干狠狠插 | 激情福利视频 | 神马影院一区二区三区 | 国产69久久精品成人看动漫 | 视频一区在线 | 成人二区 | 在线看免费 | 日韩精品成人一区二区三区视频 | 毛片一级片 | 国产精品国产精品国产专区不片 | 欧美2区 | 免费在线观看av网站 | 日本一区二区高清不卡 | 久久9久 | 国产成人精品一区二区三区四区 | 超碰在线免费公开 | 麻豆精品国产91久久久久久 |