51独立按键控制LED显示二进制

#include 

void Delay(unsigned int xms)
{
	unsigned char i, j;
	while(xms--)
	{
		i = 2;
		j = 239;
		do
		{
			while (--j);
		} while (--i);
	}
}

void main()
{
	unsigned char LEDNum=0;
	while(1)
	{
		if(P3_1==0)			
		{
			Delay(20);		
			while(P3_1==0);	
			Delay(20);		
			
			LEDNum++;		
			P2=~LEDNum;	
		}
	}
}

实现独立按键按下松手以二进制顺序亮灯

eg:开始为0000 0000    转化为十进制为0

       然后是0000 0001     转化为十进制为1

                  0000 0010     转化为十进制为2

                  0000 0011     转化为十进制为3   

以此类推十进制逐一递加

LED按顺序点亮

你可能感兴趣的:(单片机,c语言,51单片机)