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; } } }