⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 flashled.c

📁 一个单片机程序
💻 C
字号:
#include <reg52.h>

#define BYTE unsigned char
#define WORD unsigned int

sbit LED1=P1^0;
sbit LED2=P1^1;
sbit LED3=P1^2;
sbit LED4=P1^3;
sbit LED5=P1^4;
sbit LED6=P1^5;
sbit LED7=P1^6;
sbit LED8=P1^7;

sbit DLEDcs1=P2^1;
sbit DLEDcs2=P2^0;
sbit DLEDcs3=P2^2;
sbit DLEDcs4=P2^3;

void Delay()
{
	WORD i;
	i=0x1000;
	while(i--);
}

main()
{
	BYTE i,j,x,y;
	//关闭数码管显示
	DLEDcs1=DLEDcs2=DLEDcs3=DLEDcs4=0;	
	
	//流水灯实验
	while(1)
	{
		Delay();
		P1=0xff;//熄掉所有灯
	
		//单灯流水
		x=1;
		for(i=0;i<8;i++)
		{
			Delay();
			P1=x^0xff;
			x*=2;//if(x==0) x=1;

		}
	
	
		//反向流水
	

		y=128;
		for(i=0;i<8;i++)
		{
			Delay();
			if (y==0) y=1;
			P1=y^0xff;
			y=y/2;
		
		}
	

		
		Delay();
		P1=0xff;//熄掉所有灯


		//双灯流水
		x=3;
		for(i=0;i<7;i++)
		{
			Delay();
			P1=x^0xff;
			x*=2;//if(x==0) x=1;
		}
		//双反流水
		y=192;
		for(i=0;i<7;i++)
		{
			Delay();
			if (y==0) y=1;
			P1=y^0xff;
			y=y/2;
		
		}

	//交替显示1
		for(i=0;i<4;i++)
		{
			Delay();
			P1=0x55;
			Delay();
			P1=0xaa;			
		}
		Delay();P1=0xff;//熄掉所有灯
		//交替显示2
		for(i=0;i<4;i++)
		{
			Delay();
			P1=0x33;
			Delay();
			P1=0xcc;			
		}

	
		Delay();P1=0xff;//熄掉所有灯
			//另一个花样
		for(i=0;i<8;i++)
		{
			y=P1;x=1;
			for(j=0;j<8-i;j++)
			{
				Delay();
				P1=y&(x^0xff);
				x*=2;
			}
		}
		x=128;
		y=128;
		
		for(j=0;j<8;j++)
	{
		Delay();
		
		P1=x;
		y=y/2;
		x=y+x;
			
	}	
	x=0xff;
	y=1;
	for (j=0;j<9;j++)
	{
	Delay();
	P1=x;
	x=x-y;
	y=y*2;	
	}




	}	
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -