节日彩灯
K0键按下:D1-D4,D5~D8交替点亮、
K1键按下:奇数灯与偶数灯交替点亮
K2键按下:向下流水灯
K3键按下:向上流水灯
#include"reg52.h"
#include"intrins.h"
#define LED P3
sbit K1=P1^0;
sbit K2=P1^1;
sbit K3=P1^2;
sbit K4=P1^3;
void key();
void delay(int n);
void L_LED();
void main()
{
LED=0xff;
while(1)
{
key();
}
}
void key()
{
K1=K2=K3=K4=1;
if(K1 == 0)
{
while(K1 == 0)
{
LED=0x0f;
delay(50000);
LED=0xf0;
}
}
// ****************
if(K2 == 0)
{
while(K2 == 0)
{
LED=0x55;
delay(50000);
LED=0xaa;
}
}
//***************
if(K3 == 0)
{
while(K3 == 0)
{
int i,temp;
temp=0x01;
for(i=0;i<=8;i++)
{
LED=~temp;
delay(50000);
temp=temp<<1;
}
}
}
//**********************
if(K4==0)
{
while(K4 == 0)
{
int i,temp;
temp=0x7f;
for(i=0;i<=8;i++)
{
LED=temp;
delay(50000);
temp=cror(temp,1);
}
}
}
}
void delay(int n) //延时函数
{
while(n–);
}