本書著眼于嵌入式系統基礎知識以及基本系統開發方法的講解,內容包括嵌入式系統及微處理器基本原理、嵌入式微處理器指令系統、系統設計與軟件開發、計算機接口技術與應用等方面的知識,并通過實例講解嵌入式系統設計的過程和原理。書中的大部分內容是作者實際教學、科研經驗的總結,適合在國內高校中推廣應用。本書既可作為高等院校電子工程、計算機、自動化、軟件工程等專業高年級本科生嵌入式系統課程教材,又可作為相關專業碩士研究生的選修課教材,還可作為從事嵌入式開發的工程技術人員的參考用書。
本書內容充實,系統全面,結構清晰,圖文并茂,通俗易懂,重點突出;各章節循序漸進,由淺入深。
第1章概述
1.1嵌入式系統的發展
1.1.1嵌入式系統的定義及特點
1.1.2嵌入式系統的結構
1.1.3嵌入式系統的發展史
1.2嵌入式系統的分類
1.3嵌入式系統的應用
1.4嵌入式操作系統
1.4.1操作系統的概念及功能
1.4.2操作系統的分類
1.4.3實時操作系統
1.4.4常見的嵌入式操作系統
習題
第2章ARM微處理器
2.1ARM概述
2.1.1ARM簡介
2.1.2ARM的版本及系列
2.2嵌入式處理器基礎
2.2.1PC體系結構分類
2.2.2CISC和RISC
2.2.3CPU性能的影響因素
2.3嵌入式處理器分類
2.4ARM處理器的工作狀態及運行模式
2.4.1ARM處理器的工作狀態
2.4.2ARM處理器的運行模式
2.5ARM處理器寄存器的組織結構
2.5.1ARM狀態下的寄存器組織
2.5.2Thumb狀態下的寄存器組織
2.5.3程序狀態寄存器
2.6異常中斷
2.6.1異常的種類
2.6.2異常向量表和優先級
2.6.3異常的進入和返回
習題
第3章ARM微處理器的指令系統
3.1ARM微處理器的指令結構
3.1.1ARM微處理器的指令集分類
3.1.2ARM微處理器指令的格式
3.1.3ARM微處理器指令的條件域
3.2ARM微處理器指令集的尋址方式
3.2.1立即尋址
3.2.2寄存器尋址
3.2.3寄存器間接尋址
3.2.4寄存器移位尋址
3.2.5基址變址尋址
3.2.6多寄存器尋址
3.2.7相對尋址
3.2.8堆棧尋址
3.3ARM微處理器的指令集
3.3.1跳轉指令
3.3.2數據處理指令
3.3.3乘法指令與乘加指令
3.3.4程序狀態寄存器指令
3.3.5加載/存儲指令
3.3.6批量數據加載/存儲指令
3.3.7數據交換指令
3.3.8移位指令
3.3.9協處理器指令
3.3.10異常中斷指令
3.4Thumb指令集
3.4.1數據處理指令
3.4.2跳轉指令
3.4.3Load/Store指令
3.4.4軟件中斷指令
3.5ARM程序設計基礎
3.5.1ARM偽指令
3.5.2ARM匯編程序格式
3.5.3匯編語言編程實例
3.6匯編語言與C語言混合編程
習題
第4章嵌入式系統開發環境
4.1建立嵌入式系統的軟件開發環境
4.1.1在虛擬機上運行Linux操作系統
4.1.2常用輔助工具
4.2程序調試燒寫工具
4.2.1JTAG燒寫線的制作
4.2.2燒寫程序Jflash簡介
4.3Linux操作系統移植
4.3.1Bootloader概述
4.3.2Linux操作系統的目錄結構
4.3.3Bootloader與Linux操作系統
4.3.4編譯及配置內核
4.3.5制作根文件系統
4.4ARM開發工具ADS
4.4.1ADS基礎
4.4.2ADS中的工程管理工具CodeWarrior IDE
4.4.3ADS中的調試工具AXD
4.4.4調試工具條
4.4.5AXD調試器中常用的調試窗口
習題
第5章中斷系統原理與應用
5.1中斷的基本概念
5.1.1中斷的基本概念和處理過程
5.1.2中斷源、中斷信號和中斷向量
5.1.3接口和端口
5.1.4中斷優先級與中斷嵌套
5.1.5中斷響應條件與中斷控制
5.2S3C2440的中斷系統
5.2.1S3C2440的中斷源
5.2.2S3C2440的中斷控制
5.3S3C2440中斷編寫實例
5.3.1中斷控制程序編寫的步驟
5.3.2中斷實例
習題
第6章Linux設備驅動程序
6.1概述
6.2Linux設備驅動模型
6.2.1sysfs文件系統
6.2.2內核相關數據結構
6.3一個簡單的設備驅動程序
6.4設備驅動程序與硬件
6.5用戶程序和內核之間傳遞數據
6.6中斷技術
6.7軟中斷和tasklets
6.8/proc文件系統
習題
第7章ADC和觸摸屏接口
7.1概述
7.2特點
7.3ADC及觸摸屏接口操作
7.4功能描述
7.4.1AD轉換時間
7.4.2觸摸屏接口模式
7.5ADC及觸摸屏接口特殊寄存器
7.5.1ADC控制寄存器
7.5.2ADC觸摸屏控制寄存器
7.5.3ADC開始延時寄存器
7.5.4ADC轉換數據寄存器0
7.5.5ADC轉換數據寄存器1
7.5.6ADC觸摸屏指針上下中斷檢測寄存器
7.6ADC驅動程序及測試程序
7.6.1三通道ADC驅動程序
7.6.2三通道ADC采樣測試程序
習題
第8章嵌入式Linux圖形用戶接口
8.1嵌入式GUI簡介
8.1.1嵌入式GUI的特點
8.1.2嵌入式GUI的種類
8.2嵌入式GUI——Qt
8.2.1Qt與Qt/Embedded簡介
8.2.2Qt的特點
8.2.3Qt的執行過程
8.2.4Qt的插槽機制
8.2.5一個完整的Qt程序
8.2.6Qt Designer介紹
8.3Qt/E4與鍵盤鼠標接口的映射
8.3.1Qt/E4的移植過程
8.3.2Qt/E4鍵盤鼠標接口的工作原理
8.3.3Qt/E4與Linux PS/2鍵盤鼠標驅動的銜接
8.3.4Qt/E4鍵盤驅動映射的實現
習題
第9章基于ARM嵌入式銀行排隊模擬系統
9.1功能分析
9.2硬件設計
9.2.1硬件總體設計
9.2.2功能模板接口與連接
9.3軟件設計
9.3.1軟件總體結構設計
9.3.2服務器軟件設計
9.3.3客戶端軟件設計
9.3.4應用程序開發
習題
第10章遠程醫療監控系統設計
10.1遠程醫療監護系統概述
10.1.1遠程醫療監護系統發展背景
10.1.2GPRS遠程醫療監護系統組成
10.2系統硬件接口描述
10.2.1串口操作介紹
10.2.2串口相關寄存器描述
10.3硬件系統設計
10.3.1數字加速度計ADXL345
10.3.2GPRS模塊介紹
10.3.3GPS模塊介紹
10.4軟件系統設計
10.4.1程序流程圖
10.4.2程序代碼及注釋
習題
參考文獻