單片機前後臺系統的優缺點

一般的單片機系統大多是採用了此種模式編程,優點是簡潔,明瞭,新手的上手速度很快,特別是專注用來做一件事情的時候,一個while循環基本是無敵的。比如實現一個i2c slave ,完全可以用一個while 來模擬實現一個i2c 的slave 控制器。在操作系統上來模擬一個i2c slave 的話,基本不太可能實現,因爲實時系統存在最大關中斷的時間。

接下來談談前後臺系統的缺點,前後臺系統面臨的一個直接困境是,軟件規模大了,很難管理。處理的模塊一多的話,實時性也根本難以保障。
假設當前有模塊1,2,3。假設來了中斷需要處理模塊3,如果模塊3的處理是最緊迫的,但是當前cpu 只運行到模塊1, 這樣的話,必須還要承受模塊2的運行時間延遲,才能輪到模塊3的處理,當模塊越多的時候很可能情況更糟糕。單個循環要解決此類問題的話,只能在中斷裏面去處理緊急事件,這樣會造成中斷執行太長,造成多層的中斷嵌套,最終可能導致中斷棧空間爆掉。更重要的是:不是所有的中斷都是緊急的重要的,很可能各個要處理的模塊優先級要大於不緊急的中斷處理。這樣造成的後果是不但各個模塊間不能相互通訊,而且實時模塊完全得不到處理,在一箇中大型軟件項目中,採用此類方法可以說是一種管理的災難。

綜上所述,前後臺的缺點是遠大於優點的,所以就需要一個實時操作系統來解決這些缺點。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章