目前,嵌入式產品已經無處不在:通信、信息、數字家庭、工業控制等領域,隨處都能見到嵌入式產品。國內也掀起了學習嵌入式知識的高潮,嵌入式知識的學習范圍很廣,不僅要學習軟件知識還要學習硬件知識,并且要以應用為導向。因此,建議學習者首先選擇一個主流芯片,以點帶面、循序漸進地進行。從應用市場來看,以ARM為核心的嵌入式技術逐漸成為我國嵌入式教學的主流。
結合多年的教學實踐,筆者編寫了嵌入式系列教材:《匯編語言程序設計——基于ARM體系結構》、《嵌入式系統接口原理與應用》、《嵌入式Linux操作系統原理與應用》、《嵌入式軟件設計與應用》、《移動設備軟件開發與應用》。
嵌入式系統的設計包括硬件設計和軟件設計,不同專業的學生應該有所偏重。在現今的嵌入式開發中,通常是基于某種開發板做二次開發,從這個角度看,硬件開發所占的比重不到20%,而軟件開發的比重占到了80%。因此本書嵌入式硬件設計只是簡單介紹,而是著重于嵌入式軟件的開發和設計。本書主要介紹基于Windows CE 6.0嵌入式操作系統的應用軟件設計,是學習嵌入式軟件設計的入門級教材。
本書主要內容分成3個部分:第1部分介紹嵌入式操作系統基礎,包括第1、2章。第2部分介紹基于嵌入式操作系統Windows CE的軟件開發,本書的重點在于介紹應用程序開發。這部分內容由第3∼7章組成,具體包括Windows CE操作系統開發基礎、嵌入式MFC應用程序開發、C#開發嵌入式應用程序、嵌入式通信編程、嵌入式數據庫編程等內容。第3部分是實驗內容,包括第8章。具體章節安排如下:
第1章嵌入式系統基礎:本章首先介紹了嵌入式系統的基本概念、嵌入式系統的系統設計方法,然后介紹了嵌入式硬件設計和二次開發等有關內容。
第2章嵌入式系統軟件設計:本章首先介紹了嵌入式系統的軟件體系結構,然后介紹了嵌入式軟件設計的基本流程以及嵌入式系統分析與設計常用的一些工具軟件,最后介紹了嵌入式系統集成、測試和可靠性設計等內容。
第3章Windows CE操作系統開發基礎:本章首先介紹了Windows CE 操作系統的發展歷程以及技術特點,接下來重點介紹了基于Windows CE的嵌入式軟件開發環境和開發流程,側重點在于嵌入式應用程序的開發,因此關于Windows CE系統的體系結構、內核的定制以及移植、Windows CE驅動程序、Windows CE的Bootloader只做一般性介紹。關于開發環境考慮到教學的需要,本書選取了Windows CE 4.2和EVC,Windows CE6.0和Visual 2005兩種版本,前者使用C++或MFC語言,后者主要使用C#語言。當然,在實踐課程或開發中更側重于使用C#語言。
第4章MFC應用程序開發:本章首先比較了C++編寫嵌入式應用程序的幾種方式,然后重點針對MFC來介紹嵌入式應用程序編寫的基本技術,包括消息機制、對話框編程、常用控件編程、圖形設備接口編程,最后結合簡單的圖形繪制介紹了一個綜合實例。
第5章C#開發嵌入式應用程序:Visual Studio.NET開發平臺是一款功能強大的、集成了多種編程語言的軟件開發工具,其中C#是微軟公司最新推出的新一代面向對象編程語言。利用Visual Studio.NET開發平臺和C#語言,程序員可以快速開發出嵌入式應用程序。本章首先介紹.NET開發環境和開發流程,然后結合實例重點介紹C#開發嵌入式應用程序的相關技術,包括窗體設計技術、文件讀取技術、圖形圖像處理技術以及組件編程技術。
第6章嵌入式通信編程:本章首先介紹了進程和線程有關的基本概念以及進程、線程之間的通信技術,然后介紹了TCP/IP網絡模型,并介紹了TCP/UDP編程技術,最后對嵌入式系統中常用到的幾種近距離通信技術,如串口、WiFi、藍牙等通信編程進行了介紹,通過本章的學習,讀者能使用C#語言對常用的幾種通信技術編程。
第7章嵌入式數據庫編程:嵌入式數據庫是嵌入式系統的重要組成部分,隨著消費電子產品、移動計算設備、企業實時管理應用等市場的高速發展,嵌入式數據庫的用途也日益廣泛。本章首先介紹數據庫技術的基礎知識,然后介紹Windows CE下的常用數據庫系統SQLCE的使用和Windows CE自帶數據庫API函數的使用。
第8章嵌入式軟件設計與應用實驗:本章主要介紹了嵌入式軟件設計的實驗過程,總共分為10個實驗。考慮到讀者使用的硬件平臺各異,因此盡量淡化硬件平臺的要求,大部分實驗與硬件平臺無關,在虛擬機中就可以實現,部分實驗使用了粵嵌教育的GEC210(ARM CortexA8)實驗平臺及博創公司的UP6410實驗平臺。通過本章的學習和操作,讀者可以掌握Windows CE平臺下軟件設計的基本過程,從而在此基礎上設計出具體的嵌入式產品。基本實驗都有相應的視頻參考,讀者可根據實際情況選做其中的實驗。
本書有如下幾個特點:
? 本書內容是嵌入式課程學習的嵌入式操作系統模塊,適用于嵌入式方向應用型本、專科院校、高職高專學校、嵌入式資格認證考試的教學,也適合讀者自學。
? 本書融入了作者多年的項目經驗,所有內容在編者8年的教學過程中得到不斷地修改和完善,注重實踐,盡量避免繁瑣、高深的理論介紹,強調培養學生的動手能力。
? 配套的實驗教學視頻,本書的實驗使用了粵嵌教育的GEC210(ARM CortexA8)實驗平臺和博創公司的UP6410實驗平臺,所有程序都可以在Windows CE模擬器中進行在線調試。針對這些實驗提供的相關視頻可以供學習者參考,真正做到了手把手教學。
? 配套資料,本書中用到的工具軟件、學習資料和所有的源程序都在配套資料中,利于教學與自學。有需要的讀者可以從北京航空航天大學出版社(www.buaapress.com.cn)的“下載專區”免費下載;也可以直接向作者索取。
本書在編寫的過程中得到了北京航空航天大學何立民教授、北京航空航天大學出版社馬廣云博士的很多幫助和鼓勵。本書得到了吉林大學珠海學院2011年度教材立項的支持,粵嵌教育提供了硬件平臺。參與本書編寫工作的人員如下:吉林大學珠海學院王藝璇、陳紅玲、張榮高、董鑫正、鐘錦輝、鄧人銘、孫奇、龔關、林璇等,以及湖南鐵道職業技術學院劉志成。感謝王元良院長、龐振平副院長、教學工作部楊文彥主任、姜云飛教授、陳守孔教授等的大力支持,感謝家人對我的大力支持。
本書成書倉促,作者水平有限,錯誤和不足之處在所難免,謹請讀者和同行專家批評指正,郵箱:wen_sir_125@163.com。