1. 程式人生 > >LED閃爍代碼 加循環和不加循環有什麽區別

LED閃爍代碼 加循環和不加循環有什麽區別

重復 過程 完成 一次 () 這樣的 目的 設置 led

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函數出來了,完成了程序的第一次執行,然後又執行第二次,等等。

兩種方法效果是不一樣的,但程序流程完全不一樣,我更偏向第二種,第一種執行效果會讓人迷惑。

LED閃爍代碼 加循環和不加循環有什麽區別