#include <STC89C5xRC.H>
void Delay(unsigned int xms);
unsigned char LEDNum;
void main()
{
P2=~0X01;
while(1)
{
if(P31==0)
{
Delay(20);
while(P31==0);
Delay(20);
LEDNum++;
if(LEDNum>=8)
LEDNum=0;
P2=~(0x01<<LEDNum);
}
else if(P30==0)
{
Delay(20);
while(P30==0);
Delay(20);
if(LEDNum==0)
LEDNum=7;
else
LEDNum--;
P2=~(0x01<<LEDNum);
}
else if(P32==0)
{
Delay(20);
while(P32==0);
Delay(20);
LEDNum++;
if(LEDNum>=8)
LEDNum=0;
P2=~(0x01<<LEDNum);
}
else if(P33==0)
{
Delay(20);
while(P33==0);
Delay(20);
if(LEDNum==0)
LEDNum=7;
else
LEDNum--;
P2=~(0x01<<LEDNum);
}
}
}
void Delay(unsigned int xms) //@12.000MHz
{
unsigned char i, j;
while(xms--)
{
i = 2;
j = 239;
do
{
while (--j);
} while (--i);
}
}
标签:P2,LED,LEDNum,STC89C52,51,else,Delay,while,20 From: https://blog.51cto.com/u_15865347/6025736