独立按钮控制led灯

发布时间 2023-04-27 19:31:54作者: rickly233

先看电路图,

每个按钮默认高电平,都跟GND相连

如果按下开关,接口接地,变成低电平

特别的一点是,P3的顺序是1,0,2,3

如果我们要实现第一个按钮灯右移

那么我们循环判断P3_1是否为0

然后延时,然后再写个while(!P3_1)即可

表示松手就退出

然后再左移即可

代码如下:

#include <at89c51RC2.h>

void delay(int x)
{
	x *= 100;
	while(x) x--;
}

void main()
{
	P2 = 0xFE;
//	unsigned char num = 0;
	while(1)
	{
		if(P3_1 == 0)
		{
			delay(20);
			while(P3_1 == 0);
			P2 = P2 << 1;
		}
	}
}