51单片机流水灯

今天我们来使用51单片机控制LED灯亮灭

#include <REGX52.H>

void Delay1ms(unsigned int xms)		//@11.0592MHz
{
	unsigned char i, j;

	while(xms){
	i = 2;
	j = 199;
	do
	{
		while (--j);
	}while (--i); 
		xms=xms-1;
	}

}

void main()
{
	while(1){
	P2=0xFE; //1111 1110
	Delay1ms(50);
	P2=0xFD;//1111 1101
	Delay1ms(50);
	P2=0xFB;// 1111 1011
	Delay1ms(50);
	P2=0xF7;// 1111 0111
	Delay1ms(50);
	P2=0xEF; //1110 1111
	Delay1ms(50);
	P2=0xDF;// 1101 1111
	Delay1ms(50);
	P2=0xBF;
	Delay1ms(50);
	P2=0x7F;
	Delay1ms(50);
	}
}

每亮一个灯,就休眠一段时间,然后重置灯的状态,即可完成流水灯,这些部分需要放在while循环重复执行


版权声明:本文为wfsfd13123原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。