**************************控制要求***************************** 按下p1.0一次 LED1 亮 ,再按一次 LED1 LED2 亮 , 再按一次 LED1 LED2 LED3 亮 ,再按一次 三盞全部熄滅。 #include <reg52.h> #define uchar unsigned char #define uint unsigned int uchar num; sbit p10=P1^0; /*按鍵*/ sbit p01=P0^1; /*LED1*/ sbit p02=P0^2; /*LED2*/ sbit p03=P0^3; /*LED3*/ void delay(uint xms)//延時(shí)子涵數(shù) { uint k,j; for(k=xms;k>0;k--) for(j=1;j>0;j--); } void main() { while(1) { if(p10==0) //按鍵按下 { delay(10); //延時(shí)消抖10毫秒 if(p10==0) { num++; while(p10==0);//等待按鍵釋放 } } if(num==0) { p03=1; p02=1; p01=1; } if(num==1) { p03=1; p02=1; p01=0; } if(num==2) { p03=1; p01=0; p02=0; } if(num==3) { p02=0; p01=0; p03=0; } if(num==4) { num=0; } } }