單片機要上操作系統(tǒng)么?

單片機,特別是8位的單片機,一般很少要用到操作系統(tǒng)。

通常加了個操作系統(tǒng)啥事都沒干資源就沒了一大半,所以在單片機里上操作系統(tǒng)頗有殺雞用牛刀的意味。

不過話又說回來,看你怎么定義操作系統(tǒng)了。

你可以說:

while(1) ?{

}

就是一個操作系統(tǒng)。

入門教程一般提到的流水燈,就是放在這個循環(huán)里面跑啊跑。

你可以加點花樣,比如流水燈跑完一個流程后蜂鳴器響一下,于是就把蜂鳴器的代碼寫在流水燈后面。

到后來,你學(xué)了按鈕,又把按鈕的代碼往后面加。

所有任務(wù)都放在里面,但每次只能做一件事情。

假如又要處理UART,又要處理SPI,循環(huán)本身還有幾個邏輯運算呢?還好芯片本身還有中斷處理函數(shù)。

平時在主函數(shù)里面跑著,當(dāng)遇到外部請求的時候處理中斷函數(shù),然后再回到主函數(shù)。

但假如主函數(shù)里的任務(wù)A跟任務(wù)B之間是相互獨立并且要同時運行呢?

可以通過定時器中斷為每個任務(wù)分配時間片,這就有了分時操作系統(tǒng)的雛形。

于是,單片機要不要上操作系統(tǒng)就可以簡單的歸結(jié)為:你的程序有沒有復(fù)雜到多個任務(wù)并行。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容