商品簡介
本書系統地介紹了嵌入式軟/硬件系統的組成、工作原理、設計流程和方法。全書共10章,主要內容包括嵌入式系統設計基礎、嵌入式系統的設計方法、ARM體系結構及指令系統、基於S3C2410的硬件電路設計、嵌入式Linux操作系統、嵌入式Linux系統的Boot Loader設計、嵌入式Linux程序設計基礎、嵌入式Linux系統的驅動開發、嵌入式網絡程序設計和嵌入式Linux圖形用戶界面編程等。
本書可作為高等院校電子與通信類專業的教材,也可作為電子與通信領域的科研及工程技術人員的參考書。
目次
第1章 嵌入式系統設計基礎
1.1 嵌入式系統簡介
1.1.1 現代計算機的發展歷程
1.1.2 嵌入式系統的定義和特點
1.1.3 嵌入式系統的組成
1.1.4 嵌入式系統的應用模式
1.1.5 嵌入式系統的現狀和發展方向
1.2 嵌入式處理器
1.2.1 嵌入式處理器的分類
1.2.2 ARM微處理器
1.2.3 PowerPC. MIPS及X86架構
1.3 嵌入式操作系統
1.3.1 嵌入式操作系統的概念和分類
1.3.2 嵌入式操作系統的特點
1.3.3 典型嵌入式操作系統
練習題
第2章 嵌入式系統的設計方法
2.1 嵌入式系統的層次結構
2.1.1 硬件層
2.1.2 中間層
2.1.3 軟件層
2.1.4 功能層
2.2 嵌入式系統的設計流程
2.2.1 需求分析
2.2.2 規格說明
2.2.3 體系結構設計
2.2.4 軟/硬件構件設計
2.2.5 系統集成
2.3 嵌入式系統設計流程模型
2.3.1 瀑布模型
2.3.2 逐步求精模型
2.3.3 螺旋模型
2.3.4 其他模型
2.4 嵌入式系統的調試與測試
2.4.1 嵌入式系統開發的輔助工具
2.4.2 嵌入式系統的調試
2.4.3 嵌入式系統的測試
練習題
第3章 ARM體系結構及指令系統
3.1 ARM微處理器的體系結構
3.1.1 ARM指令集體系結構的版本及變種
3.1.2 ARM微處理器系列產品分類及性能
3.1.3 ARM微處理器體系結構
3.1.4 ARM體系的異常中斷
3.2 指令系統
3.2.1 ARM指令編碼格式與條件碼
3.2.2 ARM指令集的尋址方式
3.2.3 ARM指令系統的分類
3.2.4 Thumb指令
3.3 基於ARM體系的匯編語言程序設計
3.3.1 ARM匯編器所支持的偽指令
3.3.2 匯編語言的語句格式
3.3.3 匯編語言的程序結構及子程序調用
3.3.4 ARM集成開發環境ADS的使用
練習題
第4章 基於S3C2410的硬件電路設計
4.1 基於微處理器的嵌入式系統的硬件設計
4.1.1 微處理器芯片選型的一般原則
4.1.2 多路時鐘電路的設計
4.1.3 電源電路的設計
4.1.4 系統復位電路的設計
4.2 存儲系統的分析與設計
4.2.1 存儲器的分類
4.2.2 S3C2410存儲系統的構成分析
4.2.3 S3C2410存儲器系統的設計
4.3 通用I/O接口的設計
4.3.1 中斷接口概述
4.3.2 RS-232-C串行接口的設計
4.3.3 USB接口電路的設計
4.3.4 JTAG接口
4.3.5 A/D轉換接口
4.3.6 以太網接口
4.4 人機交互接口
4.4.1 顯示接口
4.4.2 觸摸屏接口
練習題
第5章 嵌入式Linux操作系統
5.1 Linux及其應用
5.1.1 Linux與Unix和GNU
5.1.2 Linux的特點
5.1.3 Linux的發展及應用
5.2 嵌入式Linux內核
5.2.1 嵌入式Linux的內核特徵
5.2.2 進程管理
5.2.3 內存管理
5.2.4 文件系統管理
5.2.5 設備管理
5.2.6 進程間通信機制
5.3 嵌入式Linux文件系統
5.3.1 嵌入式文件系統介紹
5.3.2 Linux文件系統概述
5.3.3 嵌入式Linux常用文件系統
5.3.4 嵌入式Linux文件系統框架和特性
5.4 典型嵌入式Linux系統
5.4.1 霤Linux
5.4.2 RT-Linux
5.4.3 MontaVistaLinux
5.4.4 RTAI
練習題
第6章 嵌入式Linux系統的Boot Loader設計
6.1 Boot Loader的墓本概念
6.1.1 Boot Loader所支持的CPU和嵌入式板
6.1.2 Boot Loader的安裝媒介
6.1.3 用于控制Boot Loader的設備或機制
6.1.4 Boot Loader的啟動過程
6.1.5 Boot Loader的操作模式
6.1.6 Boot Loader與主機之間的文件傳輸協議
6.2 基於S3C2410開發板的Boot Loader的具體實現
6.2.1 系統啟動流程的設計
6.2.2 Boot Loader的具體實現
練習題
第7章 嵌入式Linux程序設計基礎
7.1 嵌入式Linux開發基礎
7.1.1 嵌入式Linux開發步驟
7.1.2 嵌入式Linux的安裝
7.1.3 開發工具的配置
7.2 Linux的常用工具
7.2.1 Shell編程
7.2.2 常用Shell命令
7.2.3 Shell編程實例
7.2.4 程序編輯器
7.3 嵌入式Linux操作系統的開發工具
7.3.1 編譯器GCC
7.3.2 Makefile
7.3.3 調試器GDB
7.3.4 二進制代碼工具
7.4 交叉開發環境
7.4.1 交叉開發環境介紹
7.4.2 應用程序的遠程交叉調試
練習題
第8章 嵌入式Linux系統的驅動開發
8.1 Linux下的設備驅動程序簡介
8.1.1 設備驅動程序的概念
8.1.2 驅動設備的分類
8.1.3 設備文件
8.1.4 主設備號和次設備號
8.1.5 Linux設備驅動程序結構
8.2 設備驅動程序的開發過程
8.2.1 模塊化驅動程序設計
8.2.2 字符設備注冊和初始化
8.2.3 中斷管理
8.2.4 設備驅動開發的摹本函數
8.3 串口驅動程序設計
8.3.1 終端設備和控制臺
8.3.2 Linux串口驅動程序分析
8.4 LCD驅動程序設計分析
8.4.1 LCD控制器
8.4.2 framebuffer設備驅動程序分析
8.4.3 LCD驅動開發的主要工作
8.5 中斷處理
8.5.1 中斷程序分析
8.5.2 一個簡單的中斷處理程序
練習題
第9章 嵌入式網絡程序設計
9.1 嵌入式以太網基礎知識
9.1.1 以太網介紹及其嵌入式應用
9.1.2 嵌入式系統中主要處理的網絡協議
9.2 以太網接口設計
9.2.1 網絡設備驅動程序基本結構及功能
9.2.2 以太網控制器CS8900A
9.2.3 基於CS8900A的網絡驅動程序實例
9.3 Linux網絡編程實現
9.3.1 socket基本函數
9.3.2 TCP編程實例
練習題
第10章 嵌入式Linux圖形用戶界面編程
10.1 Linux圖形開發基礎
10.1.1 GUI的一般架構
10.1.2 嵌入式GUI底層支持庫
10.1.3 嵌入式GUI高級函數庫
10.2 嵌入式Linux圖形用戶界面簡介
10.2.1 Qt/Embedded
10.2.2 MicroWindows
10.2.3 MiniGUI
10.2.4 OpenGUI
10.3 Qt/Embedded嵌入式圖形開發基礎
10.3.1 Qt/Embedded概述
10.3.2 創建Qt/Embedded開發環境
10.3.3 Qt/Embedded的使用
10.3.4 開發實例:基於PC的簡單程序
練習題
參考文獻