LED閃爍代碼 加循環和不加循環有什麽區別
阿新 • • 發佈:2019-05-12
重復 過程 完成 一次 () 這樣的 目的 設置 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閃爍代碼 加循環和不加循環有什麽區別