#include<reg52.h》
#include<intrins.h>
#define uint unsigned int
#define uchar unsigned char
uchar aa;
uint i,j;
void delay(uint);
void main()
{
for(i=0;i<=1;i++)
{ aa=0xfe;
for(i=0;i<=7;i++)
{ P0=aa;
delay(200);
aa=_crol_(aa,1);
delay(200);
}
aa=0x00;
for(j=0;j<=7;j++)
{ P0=aa;
delay(200);
aa=_cror_(aa,1);
delay(200);
}
}
aa=0xff;
for(i=0;i<=4;i++)
{
P0=aa;
delay(300);
P0=~aa;
delay(300);
}
}
void delay(uint ms)
{
for(i=ms;i>0;i--)
for(j=110;j>0;j--) ;
}
題目如下。。
8個發光管間隔200ms由上至下,再由下至上,再重復一次
然后全部熄滅再以300ms間隔全部閃爍5次。重tg復此過程
為什么我運行的時候只有第一個for循環實現了。。其余都沒有實現。
但keil并沒有報錯、、
你的第一個for循環括號位置不對,建意將其改為while(1)的形式。
歡迎光臨 (http://www.zg4o1577.cn/bbs/) | Powered by Discuz! X3.1 |