8个发光管间隔200ms由上至下,再由下至上,再由上至下,再由下至上,然后全部熄灭再以300ms间隔全部闪烁5次。重复上面过程。
我自己编程之后写进去,现象是:8个发光管由上到下,再由下到上,然后就全部发光。和要求不一样啊
#include <reg52.h>
#include <intrins.h>
unsigned int a;b;c;
unsigned char d;
void delay (unsigned char x);
void main()
{
while(1)
{
c=2;
while(c--)
{
d=0xfe;
for(a=7;a>0;a--)
{
P1=d;
delay(68);
d=_crol_(d,1);
}
d=0x7f;
for(a=7;a>0;a--)
{
P1=d;
delay(68);
d=_cror_(d,1);
}
}
P1=0xfe;
delay(68);
P1=0xff;
c=5;
while(c--)
{
P1=0x00;
delay(100);
P1=0xff;
delay(100);
}
}
}
void delay(unsigned char x)
{
for(a=500;a>0;a--)
for(c=x;c>0;c--);
}
求解~~~~~~~~~~~~~~ |