
172
|
第六章
和 LCD 控制器等位於機板上的元件通訊時,傳輸可靠性就較不重要,如果系統是位於
廣大的海洋中監控海嘯,會想要比序列通訊更可靠的機制。
使用無線網路時,會想要較可靠的機制,無線網路很難,是「真的」很難,莫非(莫非
定律的莫非)最喜歡無線網路。
無線網路最難處理的問題之一是環境相依性,作者曾經遇過一個在十一月
安裝時能正常運作,但隔年春天就慢慢無法運作的系統,原因是樹葉吸收
了 2.4 GHz 無線電波。
網路系統有各種多樣化的應用,當面對建立良好無線電所需成本時,大多數公司都會退
縮。會有人說「讓我們自行開發吧,這些元件沒那麼貴。」作者瞭解你會想要同意,因
為新產品實在太棒了,而無線元件的成本會讓產品最後的價格失去市場競爭力。作者也
曾經處於相同的環境,想著「會有多難?」實際的難度大約是目前評估的難度,再加上
個數量級。
因此,不要重複發明成本這麼昂貴的輪子,將時間花在讓系統運作上頭,再透過自行
實作乙太網路控制器或無線綱路來降低成本;在這之前,暫時購買現成的無線模組吧。
結合週邊與通訊
截至目前,介紹了資料生產者與資料消費者,以及傳送與接收資料。這兩者之間還少了
點東西,瞭解如何在軟體內部移動資料對建立良好系統十分重要,接下來將先介紹在系
統層級處理資料的全貌,再深入其中的機制。
處理資料
第五章介紹了事件驅動系統:由觸發感應器觸發事件,引發系統改變狀態。但並非所有
嵌入式系統都能夠(或應該)設定為事件迴圈與狀態機。
有一類問題的目標是取得資料加以處理,再對結果作些動作,如此週而復始。這類
資
料驅動系統 ...