独立按键一对一控制LED灯
#include <REGX52.H>
void main ( )
{
while(1)
{
if(P2_7 == 0)
{
P0_0 = 0;
}
else
{
P0_0 = 1;
}
}
}
独立按键控制LED状态
#include <REGX52.H>
void Delay1ms(unsigned int xms) //@12.000MHz
{
unsigned char i, j;
while(xms)
{
i = 2;
j = 239;
do
{
while (--j);
} while (--i);
xms--;
}
}
void main()
{
while(1)
{
if(P2_7 == 0)
{
Delay1ms(20);
while(P2_7 == 0);
Delay1ms(20);
P0_0=~P0_0;
}
}
}
独立按键控制LED进行二进制
#include <REGX52.H>
void Delay1ms(unsigned int xms) //@12.000MHz
{
unsigned char i, j;
while(xms)
{
i = 2;
j = 239;
do
{
while (--j);
} while (--i);
xms--;
}
}
void main()
{
unsigned char LEDNum = 0;
while (1)
{
if(P2_7 == 0)
{
Delay1ms(20);
while(P2_7 == 0);
Delay1ms(20);
LEDNum++;
P0 = ~LEDNum;
}
}
}
独立按键控制LED进行移位
#include <REGX52.H>
void Delay1ms(unsigned int xms) //@12.000MHz
{
unsigned char i, j;
while(xms)
{
i = 2;
j = 239;
do
{
while (--j);
} while (--i);
xms--;
}
}
void main()
{
int LEDNum = 0;
P0 = ~0x01;
while(1)
{
if(P2_7 == 0)
{
Delay1ms(20);
while(P2_7 == 0);
Delay1ms(20);
LEDNum++;
if(LEDNum>7)
{
LEDNum = 0;
}
P0=~(0x01<<LEDNum);
}
if(P2_6 == 0)
{
Delay1ms(20);
while(P2_6 == 0);
Delay1ms(20);
LEDNum--;
if(LEDNum<0)
{
LEDNum = 7;
}
P0=~(0x01<<LEDNum);
}
if(P2_5 == 0)
{
Delay1ms(20);
while(P2_6 == 0);
{
Delay1ms(500);
LEDNum++;
if(LEDNum>7)
{
LEDNum = 0;
}
P0=~(0x01<<LEDNum);
}
Delay1ms(20);
}
}
}