#define uint unsigned
int#define uchar unsigned
char delay(uint i) //延時函數
{uchar j;
for(;i>0;i--)
for(j=0;j<140;j++);
}
main()
{uchar a,b,c;
while(1) //死循環 壹直運行
{a=0x01; //把第壹個位為高(就是1) 就是變亮 壹***8個位,每個位控制壹個LED燈for(b=0;b<8;b++) //這個循環體裏面的程序就是把燈壹次點亮
{P2=a; // 第壹位亮
delay(500);
a<<=1; //往左以為1 就是第二位燈亮
a=a|0x01; // 取或 意思是第壹位為高 壹直亮
}
for(c=0;c<6;c++) 這個循環體裏面的程序就是把燈弄滅
{
P2=~P2; 這是取反 原來1變為0
delay(500);
}
for(b=0;b<2;b++) //這個和上面是重復的{a=0x01;for(c=0;c<8;c++) {P2=a; delay(500); a<<=1; }}}}