单片机:按键控制源代码

uchar flag=0;
void key()           //按键判断程序
{
  if(key1==0)  //判断是否按下键盘
   {
     delay(10); //延时,软件去干扰
     if(key1==0)   //确认按键按下
      {
        flag=1
       }
      while(key1==0);
    }
  if(key2==0)  //判断是否按下键盘
   {
     delay(10); //延时,软件去干扰
     if(key2==0)   //确认按键按下
      {
        flag=2
       }
      while(key2==0);
    }
  if(key3==0)  //判断是否按下键盘
   {
     delay(10); //延时,软件去干扰
     if(key3==0)   //确认按键按下
      {
        flag=3
       }
      while(key3==0);
    }
  if(key4==0)  //判断是否按下键盘
   {
     delay(10); //延时,软件去干扰
     if(key4==0)   //确认按键按下
      {
        flag=4
       }
      while(key4==0);
    }
   switch(flag)
        {
        case 1:P1=led;led=_crol_(led,1);delay(1700);break;
        case 2:P1=0xff;break;
        case 3:P1=P1<<1;delay(1700); if (P1==0X00)  P1=0XFF; break;
              //case 4:P1=~P1;delay(1000);break;
        case 4:P1--;delay(200);break;
        default:continue;
        }
    }
}

 

posted @ 2021-08-10 08:30  myrj  阅读(1247)  评论(0编辑  收藏  举报