51单片机程序如何让其循环结束?

51单片机程序如何让其循环结束?,第1张

改成for循环,放在while的前面啊。for循环检验了8个LED之后就不在循环了,进入while去做别的事情,这个不简单吵首?

比如设计一个函数LED_TEST():

void LED_TEST()

{

unsigned char i

for(i=0i<8i++)

{

delay(30000)//延时程序

P1<<=1 //左移一位 该语句等效于 P1=P1<<1,亮灯数量渐增颤液

if(P1==0x00)

{

delay(30000)

P1=0xFF//重新赋值,灯茄碰物全灭

}

}

}

然后把这个函数放在while(1)循环的前面。

一般格式是:while(条件或表达式){ 程序段}

如果条粗巧件成立,则(表达式)结果为1

所以while(丛凳春1){ 程序段},是死循环,因结果已经是1了,条件也不用判断了,就一直执行大括号内的程序段,除非有break语渗耐句可以跳出

而while(1)是程序停止,同样是一个死循环,但又没有什么事情可做,连跳出的机会就 没有,所以就是停止不动了.

但如果开了中断,中断程序是可以执行的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12384321.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-25
下一篇 2023-05-25

发表评论

登录后才能评论

评论列表(0条)

保存