【51单片机独立按键控制led位移】2022-7-22

缘由51单片机独立按键控制led位移 - 24小时必答区

按下按键1,使左边第一个LED亮起。按下一次按键2,第一个LED向右移动一个位置,再按下按键1,左边第一个LED再次亮起,再次按下一次按键2,使亮着的两个灯能够一起向右移动一个位置

#include "reg52.h"
sbit k1=P1^0;
sbit k2=P1^1;
sbit k3=P1^2;
sbit k4=P1^3;
void main()
{
	unsigned char xd=0,ys=0;bit k=0;P3=0;
	while(1)
	{
		if(k1==0&&++xd==0){k=0;P3+=1;while(k1==0);}
		else if(k2==0&&++xd==0){k=0;P3*=2;while(k2==0);}
		else if(k3==0&&++xd==0){k=0;P3/=2;while(k3==0);}
		else if(k4==0&&++xd==0){k=1;while(k4==0);}
		while(++xd==0)while(++ys==0)if(k)if(P3==0||P3==255)P3=1;else P3*=2;else;
	}
}

你可能感兴趣的:(经验分享,笔记,c语言,51单片机,嵌入式硬件)