《嵌入式系統原理、套用與實踐教程》是2016年清華大學出版社出版的圖書,作者是孟利民、宋秀蘭、徐志江、彭宏、應頌翔。
基本介紹
- 書名:嵌入式系統原理、套用與實踐教程
- 作者:孟利民、宋秀蘭、徐志江、彭宏、應頌翔
- ISBN:9787302410164
- 定價:46元
- 出版社:清華大學出版社
- 出版時間:2016.02.01
- 印次:1-1
- 印刷日期:2016.01.13
內容簡介,目錄,
內容簡介
本書以目前流行的基於ARM架構的嵌入式微處理器及Linux作業系統為核心,結合作者多年的教學與科研工作經驗,循序漸進地介紹了嵌入式系統原理、嵌入式系統開發環境的搭建、嵌入式系統開發和調試工具以及相關的實驗案例,最後介紹了基於嵌入式系統的視頻通信原理、方法及實驗。
目錄
第1章嵌入式系統概述 1
1.1嵌入式系統簡介 1
1.2嵌入式系統的特點 1
1.3嵌入式系統的組成 3
1.4嵌入式系統的分類 4
1.5嵌入式系統的發展 6
第2章嵌入式微處理器概述 7
2.1處理器原理 7
2.1.1CPU的指令系統 7
2.1.2CPU的分類 8
2.1.3CPU的結構 9
2.1.4大端和小端 10
2.2嵌入式處理器的分類 10
2.3嵌入式處理器的特點 12
2.4熟悉ARM處理器 12
2.4.1ARM技術的發展 12
2.4.2ARM處理器核 13
2.4.3ARM處理器的片內匯流排 14
2.5處理器模式 16
2.6暫存器組織 17
2.7ARM的選型原則 18
第3章熟悉ARM嵌入式實驗系統 21
3.1ARM嵌入式教學實驗系統 21
3.2嵌入式實驗系統的總體設計方案 22
3.3系統開發板硬體架構 24
3.4視頻採集 25
3.5存儲 28
3.6乙太網傳輸 30
第4章ARM指令集及彙編 32
4.1ARM指令集概述 32
4.2ARM指令的定址方式 35
4.3ARM存儲器訪問指令 37
4.4ARM數據處理指令 42
4.5ARM跳轉指令 49
4.6ARM協處理指令 50
4.7ARM雜項指令 52
4.8ARM偽指令 54
第5章ADS1.2集成開發環境和ARM仿真器介紹 57
5.1ADS集成開發環境 57
5.1.1CodeWarrior集成開發環境 58
5.1.2ADS調試器 60
5.2ADS使用入門 61
5.2.1使用ADS1.2軟體 61
5.2.2ADS1.2環境下工程的仿真、調試及配置方法 70
5.3JTAG介紹 73
5.4Multi-ICE仿真器 74
實驗1:ADS1.2集成開發環境練習 75
實驗2:彙編指令實驗1 79
實驗3:彙編指令實驗2 81
實驗4:彙編指令實驗3 83
實驗5:ARM微控制器工作模式實驗 87
實驗6:C語言程式實驗 90
實驗7:C語言調用彙編程式實驗 93
實驗8:ADS環境下的開發板彙編指令實驗 96
實驗9:C語言程式設計與串口通信實驗 108
實驗10:I/O接口控制實驗 117
第6章 Linux使用基礎 126
6.1Linux簡介 126
6.1.1Linux作業系統及其特點 126
6.1.2Linux系統的發展過程 127
6.1.3Linux系統的組成部分 127
6.1.4常用Linux系統介紹 127
6.1.5RedHatEnterpriseLinux5簡介 127
6.1.6VMwareWorkstation簡介 128
6.2Linux基本命令 128
6.2.1常用命令 128
6.2.2檔案操作命令 131
6.2.3檔案編輯命令 138
6.2.4系統關閉命令 141
6.2.5用戶管理相關命令 142
6.2.6信息系統相關命令 144
6.2.7網路相關命令 147
6.3文本編輯工具gedit 150
6.4VI編輯器 152
6.5遠程管理工具 153
6.5.1Telnet服務 154
6.5.2Telnet服務的安裝 154
6.5.3Telnet服務的啟動 155
6.5.4Telnet服務的配置 157
6.5.5Telnet客戶端的使用 158
6.6SSH服務 159
6.6.1OpenSSH伺服器的安裝 160
6.6.2OpenSSH服務的配置 161
6.6.3SSH客戶端的使用 162
6.7Windows下常用遠程登錄客戶端 162
6.7.1PuTTY 163
6.7.2SSHSecureShellClient 164
6.7.3SecureCRT 165
6.8NFS伺服器的配置及管理 167
6.8.1NFS概述 167
6.8.2NFS安裝與配置 167
實驗11:建立Linux虛擬機及熟悉常用命令 171
實驗12:mount掛載實驗 194
第7章 Linux系統開發環境 198
7.1Linux交叉編譯 198
7.2GCC和GDB 199
7.2.1基於GNU及Linux核心的編程風格 199
7.2.2GCC編譯器 199
7.2.3GDB調試器 201
7.3BootLoader 204
7.3.1BootLoader簡介 204
7.3.2常見BootLoader介紹 206
7.4Linux核心移植 207
7.4.1Linux核心結構 207
7.4.2Linux系統的可載入核心模組機制 208
7.4.3用戶空間和核心空間 208
實驗13:Linux交叉編譯平台實驗 209
實驗14:ARMboot下載運行實驗 211
實驗15:程式下載燒寫實驗 215
實驗16:Linux核心編譯實驗 223
實驗17:硬碟存儲實驗 229
第8章Linux環境下驅動程式開發 237
8.1Linux設備驅動 237
8.1.1設備驅動的分類 237
8.1.2驅動程式中的基本要素 238
8.2設備驅動開發 240
8.2.1驅動開發的一般流程 240
8.2.2驅動程式的框架 240
8.2.3測試程式框架 242
8.3Linux驅動的部分技術簡介 242
8.3.1同步機制 242
8.3.2阻塞與非阻塞 244
8.3.3時間 244
8.4Linux驅動程式實例分析 246
8.5Linux系統下的具體實現 250
8.6make和Makefile檔案 251
實驗18:Linux下GPIO驅動程式編寫實驗 253
實驗19:I2C驅動程式編寫實驗 267
實驗20:MMC/SD驅動實驗 269
實驗21:RTC時鐘驅動實驗 274
第9章 Linux環境下應用程式開發 285
9.1多任務之間的同步和通信 285
9.1.1SystemV共享記憶體 286
9.1.2訊息佇列 290
9.1.3POSIX信號量 294
9.1.4SystemV信號量 297
9.1.5互斥鎖和條件變數 302
9.2TCP/IP網路編程 307
9.2.1概述 307
9.2.2TCP通信過程 309
9.2.3基本Socket函式 310
9.2.4Socket編程的其他函式 313
9.2.5TCP編程舉例 315
9.2.6UDP通信過程 317
9.2.7UDP通信伺服器端實例 318
9.3視頻壓縮與傳輸技術簡介 320
9.3.1H.264視頻編解碼 320
9.3.2RTP/RTCP流媒體實時傳輸協定 322
實驗22:圖像合成實驗 322