问题遇到的现象和发生背景
想要8个led同时点亮并且延时后熄灭即闪烁
问题相关代码,请勿粘贴截图
#include<reg51.h>
void delay()
{
unsigned char a,b,c;
for(a=20;a>0;a--)
for(b=150;b>0;b--)
for(c=70;c>0;c--);
}
void main()
{
P1=0x00;
delay();
P1=0xFF;
}
运行结果及报错内容
无
我的解答思路和尝试过的方法
我的理解是P1字节操作给8个led低电平,然后延时再对P1字节操作给8个led高电平它就灭了,但是得到的结果是没有最后的delay8个led一直亮着
我想要达到的结果
在 P1=0xFF;后加上 delay();就成功了,而且闪烁了并且是一直闪烁,没有while语句的情况下一直闪烁了,为啥呢,它执行完了之后不就停止了吗