#include
#define uchar unsigned char
const tab[]={0xfe,0xfd,0xfb,0xf7,0xef,0xdf,0xbf,0x7f};
const tab2[]={0xfe,0xfb,0xef,0xbf,0xfd,0xf7,0xdf,0x7f};
uchar flag;
void delay()
{
unsigned i,j,k;
for(i=0;i<0x01;i++)
for(j=0;j<0xff;j++)
for(k=0;k<0xff;k++);
}
void int1()interrupt 0
{
flag=0x01;
}
void int2()interrupt 2
{
flag=0x02;
}
void main()
{
uchar i;
EA=1;
EX0=1;
EX1=1;
IT0=1;
IT1=1;
P2=0xff;
while(1)
{
switch(flag)
{
case 1:
for(i=0;i<8;i++)
{
if(flag==0x02) break;
P2=tab[i];
delay();
}
if(flag==0x02) break;
P2=0x00;
delay();
break;
case 2:
for(i=0;i<8;i++)
{P2=tab2[i];
delay();
}
break;
}
}
}