ARM嵌入式系統(tǒng)原理與應(yīng)用
定 價:56 元
叢書名:普通高等學(xué)校電類規(guī)劃教材
- 作者:范山崗,王奇,劉啟發(fā),趙建立,余雪勇 著
- 出版時間:2018/10/1
- ISBN:9787115474711
- 出 版 社:人民郵電出版社
- 中圖法分類:TP332
- 頁碼:288
- 紙張:膠版紙
- 版次:1
- 開本:16開
本書共分8章。第一章 嵌入式系統(tǒng)概述。第二章 ARM體系結(jié)構(gòu)。第三章 ARM指令系統(tǒng)。第四章 ARM匯編語言程序設(shè)計。第五章 嵌入式系統(tǒng)硬件技術(shù)基礎(chǔ)。第六章 基于S3C2410的硬件結(jié)構(gòu)與接口編程。第七章嵌入式Linux操作系統(tǒng)。第八章 嵌入式系統(tǒng)設(shè)計方法及開發(fā)實(shí)例。
1.應(yīng)用實(shí)例具有真實(shí)性,是大學(xué)生創(chuàng)新大賽的一些具體實(shí)例;
2.應(yīng)用編程實(shí)例內(nèi)容較多,參考價值大;
3.實(shí)驗(yàn)內(nèi)容豐富。
本書的編寫,目的在于為嵌入式教學(xué)提供一本通俗易懂、脈絡(luò)清晰的教材或參考書。本書以ARM 處理器為例,從嵌入式系統(tǒng)硬件結(jié)構(gòu)、到操作系統(tǒng)基礎(chǔ)、再到系統(tǒng)設(shè)計案例,詳細(xì)介紹了嵌入式系統(tǒng)的基本原理和開發(fā)方法。本書從應(yīng)用出發(fā),結(jié)合實(shí)驗(yàn)教學(xué)平臺,給出了大量設(shè)計實(shí)例,為初學(xué)者提供了快速入門的學(xué)習(xí)途徑。
作者從2004年開始嵌入式系統(tǒng)方面的教學(xué)工作,先后開設(shè)《單片機(jī)原理》、《DSP與嵌入式系統(tǒng)》、《嵌入式系統(tǒng)》、《嵌入式系統(tǒng)實(shí)驗(yàn)》等課程。指導(dǎo)學(xué)生實(shí)踐性環(huán)境如軟件設(shè)計、課程設(shè)計、學(xué)生創(chuàng)新實(shí)踐、畢業(yè)設(shè)計,內(nèi)容都和嵌入式系統(tǒng)相關(guān)。涉及的項(xiàng)目有智能家居系統(tǒng)、智慧社區(qū)、智能電力控制、開放式實(shí)驗(yàn)室系統(tǒng)等。具有豐富的嵌入式系統(tǒng)方面的教學(xué)和實(shí)踐能力。在2009年01月,采用嵌入式系統(tǒng)獲得南郵教學(xué)成果獎《適應(yīng)形勢大膽變革——新環(huán)境下學(xué)生綜合實(shí)踐能力培養(yǎng)方法的研究和探索》,并作為南郵通信學(xué)院嵌入式系統(tǒng)的教學(xué)負(fù)責(zé)人,主持嵌入式系統(tǒng)課程的教學(xué)大綱、實(shí)驗(yàn)大綱的編寫。
第1章 嵌入式系統(tǒng)概述 1
1.1 嵌入式系統(tǒng)的概念 1
1.2 嵌入式系統(tǒng)的歷史 2
1.3 嵌入式系統(tǒng)的組成 4
1.3.1 嵌入式系統(tǒng)的組成結(jié)構(gòu) 4
1.3.2 嵌入式處理器 7
1.3.3 典型的嵌入式操作系統(tǒng) 9
1.4 嵌入式系統(tǒng)的特點(diǎn) 11
1.5 嵌入式系統(tǒng)的應(yīng)用前景 12
1.6 嵌入式系統(tǒng)的發(fā)展趨勢 18
思考題與習(xí)題 20
第2章 ARM體系結(jié)構(gòu) 21
2.1 ARM體系結(jié)構(gòu)概述 21
2.1.1 ARM技術(shù)簡介 21
2.1.2 ARM體系結(jié)構(gòu)的版本 22
2.1.3 ARM處理器內(nèi)核系列 23
2.2 ARM體系架構(gòu)分析 25
2.2.1 復(fù)雜指令集和精簡指令集 25
2.2.2 普林斯頓結(jié)構(gòu)和哈佛結(jié)構(gòu) 26
2.2.3 流水線技術(shù) 26
2.3 ARM處理器模式與寄存器 29
2.3.1 ARM處理器模式 29
2.3.2 ARM內(nèi)部寄存器 29
2.4 ARM體系的異常處理 33
2.5 ARM體系的存儲系統(tǒng) 35
思考題與習(xí)題 36
第3章 ARM指令系統(tǒng) 37
3.1 指令集概述 37
3.2 ARM指令集 38
3.2.1 ARM指令格式 38
3.2.2 ARM指令尋址方式 39
3.2.3 ARM指令分類 42
3.3 Thumb指令集 51
3.3.1 Thumb狀態(tài)寄存器組織 52
3.3.2 Thumb指令 53
思考題與習(xí)題 62
第4章 ARM匯編語言及C語言程序
設(shè)計基礎(chǔ) 63
4.1 ARM匯編語言的語句格式 63
4.1.1 符號命名規(guī)則 63
4.1.2 ARM匯編語言偽操作 63
4.1.3 ARM匯編語言偽指令 64
4.2 ARM匯編語言的程序結(jié)構(gòu) 65
4.3 ARM匯編語言程序設(shè)計舉例 67
4.4 ARM C語言基礎(chǔ)及混合編程 68
4.4.1 ATPCS概述 68
4.4.2 基本ATPCS 69
4.4.3 ARM程序和Thumb程序的混合
使用 71
4.4.4 C語言及匯編語言混合編程 71
4.5 ARM匯編語言實(shí)驗(yàn)基礎(chǔ) 76
4.5.1 ADS軟件組成 76
4.5.2 使用CodeWarrior IDE 80
4.5.3 使用AXD IDE 87
思考題與習(xí)題 91
第5章 嵌入式系統(tǒng)硬件技術(shù)基礎(chǔ) 92
5.1 總線 92
5.1.1 并行總線 93
5.1.2 串行總線 94
5.1.3 多總線結(jié)構(gòu) 97
5.1.4 直接存儲器訪問 97
5.2 存儲系統(tǒng) 98
5.2.1 存儲器的基本概念及分類 99
5.2.2 隨機(jī)存儲器 99
5.2.3 只讀存儲器 100
5.2.4 嵌入式系統(tǒng)的存儲器組織 101
5.2.5 存儲器的選型 101
5.3 輸入/輸出設(shè)備及通信接口 102
5.3.1 輸入/輸出設(shè)備 102
5.3.2 常用通信接口 102
5.3.3 網(wǎng)絡(luò)接口 105
5.4 嵌入式最小系統(tǒng) 105
思考題與習(xí)題 108
第6章 基于S3C2410的硬件結(jié)構(gòu)與接口
編程 109
6.1 S3C2410簡介 109
6.1.1 S3C2410X的組成 109
6.1.2 S3C2410X的特點(diǎn)及主要片上
功能 110
6.2 S3C2410X的存儲器及其控制 114
6.2.1 S3C2410X的存儲器控制器 114
6.2.2 NAND Flash控制器 116
6.3 時鐘和電源管理 118
6.3.1 S3C2410X的時鐘管理 118
6.3.2 S3C2410X的電源管理 119
6.4 通用I/O端口 119
6.4.1 S3C2410X通用I/O端口的工作
機(jī)制 119
6.4.2 S3C2410X通用I/O端口編程實(shí)例 123
6.5 定時器 125
6.5.1 S3C2410X定時器概述 125
6.5.2 S3C2410X定時器的工作原理 126
6.5.3 PWM輸出控制直流電動機(jī)應(yīng)用
實(shí)例 134
6.6 異步串行通信接口 137
6.6.1 S3C2410X的異步串行口簡介 137
6.6.2 S3C2410X UART工作原理 138
6.6.3 S3C2410X UART編程實(shí)例 146
6.7 A/D轉(zhuǎn)換接口 149
6.7.1 A/D轉(zhuǎn)換器簡介 149
6.7.2 A/D轉(zhuǎn)換的主要指標(biāo) 150
6.7.3 S3C2410X A/D轉(zhuǎn)換接口 151
6.7.4 A/D轉(zhuǎn)換器應(yīng)用實(shí)例 153
6.8 中斷控制器 155
6.8.1 S3C2410X中斷概述 155
6.8.2 中斷控制相關(guān)寄存器 158
6.8.3 S3C2410X中斷響應(yīng)與返回 163
6.8.4 中斷編程舉例 164
思考題與習(xí)題 165
第7章 嵌入式Linux操作系統(tǒng) 166
7.1 操作系統(tǒng)簡介 166
7.1.1 操作系統(tǒng) 166
7.1.2 嵌入式操作系統(tǒng) 167
7.2 嵌入式Linux操作系統(tǒng) 169
7.2.1 Linux介紹 169
7.2.2 Linux作為嵌入式操作系統(tǒng)的
優(yōu)勢 171
7.2.3 進(jìn)程管理 172
7.2.4 存儲管理 183
7.2.5 文件系統(tǒng) 191
7.2.6 設(shè)備管理 196
7.3 嵌入式Linux操作系統(tǒng)的構(gòu)建 203
7.3.1 嵌入式Linux引導(dǎo)過程 203
7.3.2 Linux啟動流程 211
7.3.3 嵌入式Linux的移植 212
7.4 嵌入式Linux系統(tǒng)的軟件開發(fā)
基礎(chǔ) 222
7.4.1 Linux常用命令介紹 222
7.4.2 Linux系統(tǒng)下的vi編輯器 225
7.5 嵌入式Linux下交叉開發(fā)環(huán)境的
建立與軟件開發(fā)過程 226
7.5.1 嵌入式教學(xué)實(shí)驗(yàn)系統(tǒng)簡介 226
7.5.2 嵌入式交叉開發(fā)環(huán)境的建立 230
7.5.3 基于Linux的應(yīng)用程序的開發(fā)
步驟 237
思考題與練習(xí) 239
第8章 嵌入式系統(tǒng)設(shè)計方法及開發(fā)
實(shí)例 240
8.1 引言 240
8.2 軟件工程及嵌入式軟件工程 242
8.2.1 概述 243
8.2.2 軟件需求 245
8.2.3 軟件設(shè)計 246
8.2.4 統(tǒng)一建模語言 247
8.2.5 嵌入式軟件編程 251
8.3 基于嵌入式系統(tǒng)的雷達(dá)智能
停車位應(yīng)用實(shí)例 252
8.3.1 背景及簡介 252
8.3.2 設(shè)計目標(biāo) 253
8.3.3 總體結(jié)構(gòu)和原理 254
8.3.4 系統(tǒng)前端及嵌入式信號處理 255
8.3.5 無線通信模塊開發(fā) 262
8.4 基于Android操作系統(tǒng)平臺的點(diǎn)餐
系統(tǒng)應(yīng)用實(shí)例 266
8.4.1 Android簡介 266
8.4.2 Android架構(gòu) 267
8.4.3 Android未來及前景 268
8.4.4 Android應(yīng)用程序基礎(chǔ) 269
8.4.5 Android開發(fā)環(huán)境搭建 271
8.4.6 Android工程目錄結(jié)構(gòu) 271
8.4.7 點(diǎn)餐系統(tǒng)實(shí)現(xiàn) 272
思考題與練習(xí) 281
附錄A GPIO端口寄存器及引腳配置 282
附錄B 雜項(xiàng)控制寄存器 284
附錄C 外中斷相關(guān)控制寄存器 285
附錄D 通用狀態(tài)寄存器 287
參考文獻(xiàn) 288