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

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 3075|回復: 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

回復

使用道具 舉報

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

本版積分規則

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

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 免费精品 | 一级毛片视频在线 | 久久久久久综合 | 久久久久久久久国产成人免费 | 成年人在线观看视频 | 成人性生交大片免费看r链接 | 91免费视频 | 国产精品乱码一区二区三区 | 欧美5区 | 亚洲福利网站 | www.日韩高清 | 伊人久久在线观看 | 国产在线一区二区三区 | 91精品国产91久久综合桃花 | 欧美日韩三区 | 久久久精品一区 | 亚洲精品久久久久久国产精华液 | 色综合美女| 91精品免费视频 | 久久国内精品 | 福利视频一区二区 | 播放一级毛片 | 亚洲一区二区三区久久 | 午夜精品一区二区三区在线播放 | 亚洲欧美日韩精品久久亚洲区 | 亚洲精品第一国产综合野 | 狠狠躁夜夜躁人人爽天天高潮 | 亚洲视频一区二区三区 | 精品久久久久一区二区国产 | 一区二区在线 | 最新午夜综合福利视频 | 欧美精品v国产精品v日韩精品 | 手机看黄av免费网址 | 99久久99 | 精品国产乱码久久久久久a丨 | 午夜无码国产理论在线 | 影音先锋成人资源 | 久久精品一区二区 | 视频一区二区在线观看 | 偷拍自拍网 | 91丨九色丨国产在线 |