間隔300ms第一次一個管亮流動一次,第二次兩個管亮流動,依次到8個管亮,然后重復整個過程。
/***********************************************************************
間隔300ms第一次一個管亮流動一次,
第二次兩個管亮流動,依次到8個管亮,
然后重復整個過程
***********************************************************************/
#include<reg52.h>
#include<intrins.h>
#define uchar unsigned char
#define uint unsigned int
#define D1 P2
void Delay10ms(uchar ms);
void main()
{
uchar i,x,y;
while(1)
{
i=0x01;
for(x=0;x<8;x++)
{
for(y=0;y<8-x;y++)
{
P2=i;
Delay10ms(30);
i=_crol_(i,1);
}
i=_cror_(i,x);
i|=0x01;
}
}
}
/***********************************************************************
10ms延遲
***********************************************************************/
void Delay10ms(uchar ms)
{
uchar a,b;
for(;ms>0;ms--)
{
for(a=38;a>0;a--)
for(b=130;b>0;b--);
}
}
|