led.c

来自「用KEILC写的单片机典型C51编程」· C语言 代码 · 共 119 行

C
119
字号

#include<reg51.h>
#include<define.h>
#include<global.h>
#include<initial.h>
#include<delay.h>
#include<led.h>
#include<input.h>
#include<beep.h>
#include<key.h>
#include<music.h>

void LedLeft(void)
{ 
	byte i;
	
	for(i=0;i<8;i++)
	{
		P1=0x01<<i;
		DelayX10ms(100);
	}
}

void LedRight(void)
{ 
	byte i;
	
	for(i=0;i<8;i++)
	{
		P1=0x01<< (7-i);
		DelayX10ms(100);
	}
}

void LedInc(void)
{ 
	byte i,temp=0;
	
	for(i=0;i<8;i++)
	{ temp+=(0x01<<i);
		P1=temp;
		DelayX10ms(100);
	}
}

void LedIncInv(void)
{ 
	byte i,temp=0;
	
	for(i=0;i<8;i++)
	{ temp+=(0x01<<i);
		P1=~temp;
		DelayX10ms(100);
	}
}

void LedDec(void)
{ 
	byte i,temp=0;
	
	for(i=0;i<8;i++)
	{ temp+=(0x01<<(7-i));
		P1=temp;
		DelayX10ms(100);
	}
}

void LedDecInv(void)
{ 
	byte i,temp=0;
	
	for(i=0;i<8;i++)
	{ temp+=(0x01<<(7-i));
		P1=~temp;
		DelayX10ms(100);
	}
}

void LedJump1(void)
{
	byte i;
	
	for(i=0;i<4;i++)
	{
		P1 = (0x01 << i)+(0x01 << (7-i));
		DelayX10ms(100);
	}
}
void LedJump2(void)
{
	byte i;
	
	for(i=0;i<4;i++)
	{
		P1 = (0x01 << (3-i))+(0x01 << (7-(3-i)));
		DelayX10ms(100);
	}
}

void LedTwo1(void)
{
	byte i;
	
	for(i=0;i<7;i++)
	{
		P1 = (0x01 << i)+(0x01 << (i+1));
		DelayX10ms(100);
	}
}
void LedTwo2(void)
{
	byte i;
	
	for(i=0;i<7;i++)
	{
		P1 = (0x01 << (7-i))+(0x01 << (6-i));
		DelayX10ms(100);
	}
}

⌨️ 快捷键说明

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