while(1);
意義:這是一個(gè)死循環(huán),代碼不再向下執(zhí)行。
用途:
1. 一般在調(diào)試代碼時(shí),為了檢測(cè)一部分代碼是否OK,防止后面的代碼干擾執(zhí)行結(jié)果,會(huì)在觀測(cè)點(diǎn)加上while(1);
2. 有些代碼檢測(cè)到運(yùn)行錯(cuò)誤時(shí),會(huì)拋出錯(cuò)誤(打印、設(shè)置錯(cuò)誤碼),然后進(jìn)入while(1);
3. 機(jī)器需要復(fù)位時(shí),停止喂看門狗,進(jìn)入while(1); 迫使看門狗超時(shí),產(chǎn)生硬件復(fù)位
while( 1 ) { 代碼 }
意義:這里將會(huì)重復(fù)執(zhí)行{}中的代碼
用途:
1. 單片機(jī)在不使用操作系統(tǒng)時(shí),主程序一般都使用這種架構(gòu)
2. 操作系統(tǒng)中的進(jìn)程,執(zhí)行任務(wù)時(shí),有些也會(huì)使用這種架構(gòu)
3. {}中的代碼不停地檢測(cè)某個(gè)條件,當(dāng)條件符合時(shí),跳出該循環(huán),繼續(xù)向下執(zhí)行