1.1 概述
1.嵌入式系統的結構組成
嵌入式系統一般由嵌入式硬件設備、嵌入式軟件部分組成。嵌入式系統的結構框圖如圖1-1所示。

圖1-1 嵌入式系統結構框圖
圖1-1中的嵌入式系統硬件部分包括(嵌入式)處理器、存儲器、I/O系統和配置必要的外圍接口部件,嵌入式系統的軟件部分包括監控程序、接口驅動等應用軟件。在16 位以上的微處理器軟件系統中,通常還需要操作系統。嵌入式系統軟/硬件的完整整體框架如圖1-2所示。

圖1-2 嵌入式系統的軟/硬件框架
嵌入式系統外圍電路一般由時鐘、復位電路、程序存儲器、數據存儲器和電源模塊等部件組成。外部設備一般應配有顯示器、鍵盤和觸摸屏等以及相應接口電路。如果將嵌入式處理器、電源電路、時鐘電路和存儲器部分(如ROM和RAM等)制作在一起,就可構成一個最小嵌入式核心控制模塊。其中,操作系統和應用程序都可以固化在ROM存儲器中。嵌入式系統的硬件和軟件都位于嵌入式系統產品本身,而開發工具和開發系統則獨立于嵌入式系統產品之外。
2.嵌入式系統的特點
嵌入式系統是將先進的計算機技術、半導體技術和電子技術與各個行業的具體應用相結合后的產物。這一點就決定了它必然是一個技術密集、資金密集、高度分散、不斷創新的知識集成系統。嵌入式系統的特點主要包括如下幾方面。
1)功耗低、體積小,專用性強
嵌入式處理器與通用型微處理器的最大不同就是嵌入式處理器大多工作在為特定用戶群設計的系統中,本身具有系統內部能源消耗低、自身設備體積小、集成度高等特點。嵌入式系統將通用計算機中由許多板卡完成的任務集成在芯片內部,從而有利于嵌入式系統設計趨于小型化,大大增強產品的便攜性及移動性。
2)操作系統內核小,系統要求實時性強
嵌入式系統的系統軟件和應用軟件在設計上不要求其功能大而全,在系統的具體實現上要求可靠性強、操作簡單化。這一方面有利于控制系統成本,同時也利于實現系統安全。嵌入式系統的軟件要求被固態存儲,以提高系統可靠性和穩定性。在軟件代碼的編寫上,要求高質量、高可靠性和實時性。由于嵌入式系統一般應用于小型電子裝置和設備中,所以在系統資源相對有限的場合,其操作系統較之傳統的操作系統要小得多。例如,μC/OS操作系統,核心內核只有8.3 KB;而Windows操作系統的最小內核則最少需要幾十MB,一般情況下也需要幾GB的存儲容量。
很多嵌入式系統都需要對所處環境的變化需要及時做出反應,以便實時地得到所需結果,不能延遲。例如,在精密數控機床加工過程中的控制及自動化監控設備中都需要準確、及時的反饋和控制,否則會造成極大地損失,乃至系統的崩潰。
3)創新性和專一的應用性
嵌入式系統和具體應用有機地結合在一起,其升級換代也是和具體產品同步進行的,因此嵌入式系統產品應具有明顯的創新性和應用性。這樣的產品一旦進入市場,就會具有較長的生命周期。
4)高效率地設計
由于對成本、體積和功耗有嚴格要求,使得嵌入式系統的資源(如內存、I/O接口等)有限,因此對嵌入式系統的硬件和軟件都必須高效率地設計。在系統硬件、軟件設計過程中要采用量體裁衣、去除冗余的方法,力爭在有限的資源上實現更高的性能和更低的成本。
5)需要開發環境和調試工具
由于嵌入式系統本身不具備自主開發能力,即使在設計完成以后,用戶通常也不能對其中的程序功能進行修改,必須有一套開發工具和環境才能進行開發。然而,這些工具和環境一般是借助于通用計算機等設備來實現的。在進行嵌入式系統的開發中,通常存在主機(或稱宿主機)和目標機(設計好的嵌入式系統硬件平臺)的概念,其中主機用于嵌入式系統相應程序的開發,目標機作為最后的執行機構。在實際的開發過程中,往往需要它們之間反復交替結合來進行。