有了按键控制LED状态以及控制LED显示二进制操作流水灯就很容易,定义一个变量,当每次检测到按键按下并且松手时,使该数值加一,利用按位左移实现流水灯
#include <REGX52.H>
void Delay(unsigned int xms)
{
unsigned char i, j;
while(xms--)
{ i = 2;
j = 239;
do
{
while (--j);
}
while (--i);
}
}
void main()
{ unsigned char m=0;
P2=~0x01;
while(1)
{
if(P3_1==0)
{
Delay(20);
while(P3_1==0);
Delay(20);
m++;
if(m>=8)
m=0;
P2=~(0x01<<m);
}
}
}