第二章 嵌入式系統環境
2.2 嵌入式作業系統: Windows CE
2.2.1 Windows CE 簡介
Windows CE 是微軟公司的產品,但不是縮小版的 Windows 版本。它是從整體 上為有限資源的平台設計的多執行緒、完整優先權、多任務的作業系統。Windows CE 採用模組化設計,並允許它對掌上型電腦到專用的工控電子設備進行定製,是 一個開放的、可裁減的、32 位元的即時嵌入式視窗作業系統。和其他桌面版視窗 作業系統(Windows98/2000/XP)相比,它具有可靠性好、即時性高、核心體積小的 特點,所以廣泛用於各種嵌入式智慧設備的開發,被廣泛應用於工業控制、資訊 家電、移動通訊、汽車電子、個人電子消費品等各種領域,是當今應用最多、增 長最快的嵌入式作業系統。
2.2.2 Windows CE 5.0
Windows CE 5.0 因為豐富的功能、親切的介面和穩定的性能,故被本論文選
為當作嵌入式作業系統,不僅如此,其還具備了以下特性 1. 模組化和小記憶體佔用
被設計成為一種高度模組化的作業系統,以適應不同類型的智慧設備對於作 業系統映射大小的不同要求,系統設計者可以根據設備的性質只選擇哪些必要的 模組或模組中的元件包含進作業系統映射。
2. 可靠性
具有比以往作業系統都可靠的穩定性,可有效地保護用戶應用的資料。
3. 多 CPU 支援和豐富的驅動程式支援。
提供了豐富的 BSP 和驅動程式支援,為每種不同類型得硬體設備提供了範例 驅動程式原始程式碼,便於用戶直接應用這些驅動程式或快速為自己的硬體設備 開發驅動程式。
4. 即時多工處理
具有強大的即時多工處理能力,使它可用於應付許多時間關鍵的任務。
5. 多種無線與有線支援
提供了豐富而靈活的無線通訊支援和有線網路連接支援。
6. 多媒體支援
多媒體技術特徵為CE 設備提供了多媒體功能,包括對播放聲音和視訊檔或透 過網路連接的資料所使用的各種協定和資料流格式的支援。
7. 多語言支援
使用Unicode 字元編碼,並被本地化為多種語言,特別是用戶介面和輸入法皆 已支援中文系統。
8. 強大的開發工具支援
Windows CE 為在最新的硬體上快速創見豐富的應用程式提供了兩組端對端 的開發工具集,包括作業系統開發工具集Platform Builder 和應用程式開發工具集 Microsoft Embedded Visual C++或 Visual Stdio。
以上種種特性都有助於在開發嵌入式系統相關程式時,能夠更快或是更有效 率地完成各種應用,雖說仍會遭遇到許多問題,不過該作業系統已經符合車道偏 移警示系統所需的作業環境。
此外,在進行研究開發時,也得了解Windows CE 5.0 的系統架構,如圖 2.1 所示,Windows CE 被設計成為一種分層結構,從底層向上分別為硬體層、OEM
層、作業系統層和應用層。每一層分別由不同的模組組成,每個模組又由不同的 組件構成。這種層次性的結構試圖儘量將硬體和軟體、作業系統與應用程式隔離 開,以便於實現系統的移植,便於進行硬體、驅動程式、作業系統和應用程式等 開發的人員分工合作、並行開發。
以本論文為例,雖說主要開發是位於應用層,但是在開發過程中也得了解作 業系統層的架構,以及如何透過韌體層來啟動硬體層的周邊設備,所以在進行實 驗測試時,不僅得完成開發程式的目的,同時也得注意到不影響背後作業系統層 或韌體層的運作。
圖2.1、Windows CE架構
2.2.3 Windows CE 的開發工具
Platform Builder 是 Windows CE 作業系統開發工具,它除了整合了一個完全的 IDE 介面,使平台使用者可以完全在 IDE 中快速創建、除錯和部署 Windows CE 作業系統。Platform Builder 整合的設備模擬器使平台設計者可以完全脫離硬體在 開發機上創建CE 設備原型。
Microsoft Embedded Visual C++是專門用來開發 Windows CE 應用程式的開 發,它的整合 IDE 環境可以使用戶快速開發控制台、MFC、ATL、DLL 等多種
WindowsCE 應用程式,並可以不依賴於硬體在整合的模擬器上完成應用程式的開 發。整合了.NET Compact Framework 的 Microsoft Visual Stdio .NET 也可以開發基 於Windows CE 的智慧設備應用程式,並使開發者在編譯語言上可以選擇 Microsoft Visual BASIC 或 Visual C#,Microsoft Visual Stdio .NET 也整合了 Windows CE 模擬 器,用於脫離硬體開發、除錯和部署智慧設備元件。如圖2.2 所示,可看到本次開 發環境所使用的Platform Builder 5.0 和 Microsoft Embedded Visual C++ 4.2 操作環 境介面。
圖2.2、Windows CE開發工具