#include"reg52.h"
#include"intrins.h"
typedef unsigned char u8;
typedef unsigned int u16;
#define led P0
sbit k1=P1^0;
u8 run=0;
u8 i;
void delay(u16 i)
{
while(i--);
}
void LED1()
{
i=0x01;
delay(25000);
while(1)
{
for(i=0;i<7;i++)
{
led=_crol_(led,1);
delay(25000);
}
for(i=0;i<7;i++)
{
led=_cror_(led,1);
delay(25000);
}
}
}
void LED2()
{
i=0x03;
delay(25000);
while(1)
{
for(i=0;i<7;i++)
{
led=_crol_(led,1);
delay(25000);
}
for(i=0;i<7;i++)
{
led=_cror_(led,1);
delay(25000);
}
}
}
void LED3()
{
i=0x03;
delay(25000);
while(1)
{
for(i=0;i<7;i++)
{
led=_crol_(led,2);
delay(25000);
}
for(i=0;i<7;i++)
{
led=_cror_(led,2);
delay(25000);
}
}
}
void keypros()
{
if(k1==0)
{
delay(1000);
if(k1==0)
{
run++;
}
while(!k1);
}
}
void main()
{
i=0x00;
while(1)
{
keypros();
switch(run)
{
case 1:
LED1();
break;
case 2:
LED2();
break;
case 3:
LED3();
break;
}
}
}
|