LED闪烁代码 加循环和不加循环有什么区别

2024-08-16  

void main()

{

         

         

             ledD1=0;

            delay(60000);

            ledD1=1;

            delay(60000);

         


}


这种是可以实现效果的。


void main()

{

         

           while(1)

           {

               ledD1=0;

            delay(60000);

            ledD1=1;

            delay(60000);

    

           }     


}


这种也是可以的


第一种和第二种效果是一样的,都达到了闪烁的目的。


第二种是很好理解的,程序是一直在while循环里面就没出来过,也没有从main函数中出来过。


第一种按程序的意思是D1闪一下就好了,但实际上是一直闪。这个是单片机开发板的设置问题,出厂好象就是这样的,你烧录进去的程序它会一直重复的执行。第一种的程序执行过程是这样的,D1亮一下,delay, D1灭一下 delay,OK这时候从main函数出来了,完成了程序的第一次执行,然后又执行第二次,等等。


两种方法效果是不一样的,但程序流程完全不一样,我更偏向第二种,第一种执行效果会让人迷惑


文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。