本書緊扣全國計算機等級考試(National Computer Rank Examination,簡稱NCRE)三級嵌入式系統開發技術考試大綱,循序漸進,由淺入深,涉及了嵌入式系統從軟件到硬件各個方面的知識。
本書既介紹了嵌入式系統硬件結構、軟件結構、基于ARM的嵌入式處理器、基于Linux和μC/OS-II的嵌入式操作系統的知識,還介紹了和嵌入式系統息息相關的數字媒體、計算機網絡等相關知識,適合有一定計算機硬件基礎、C語言基礎和Linux操作系統基礎的工程師學習,以及高等院校計算機相關專業的學生和愛好者閱讀,也可以作為工程設計的參考手冊。
課證融通將計算機等級考試三級嵌入式與嵌入式專業課程結合真題訓練更有效果本書以全國計算機等級考試三級嵌入式系統開發技術考試大綱為骨架,基于ARM處理器和Linux操作系統介紹了嵌入式系統基礎以及開發知識,本書共十五章,可以分為五個部分,分別是嵌入式系統基礎、嵌入式系統的處理器、嵌入式系統的硬件結構、嵌入式系統的軟件和嵌入式系統開發。
但唐仁,長春理工大學博士畢業,清華大學博士后。深圳信息職業技術學院軟件學院副院長,副教授。 學,F為國家示范性軟件職業技術學院、國家骨干校建設單位、教育部“中德職教汽車機電合作項目”試點院校,擁有兩個***高等職業教育專業教學資源庫
目 錄
**章 嵌入式系統基礎 1
1.1 嵌入式系統的起源和發展 1
1.1.1 什么是嵌入式系統 1
1.1.2 嵌入式系統的發展 6
1.1.3 嵌入式系統的分類 9
1.2 嵌入式系統的構成 10
1.2.1 嵌入式硬件系統 10
1.2.2 嵌入式處理器 11
1.2.3 外圍電路 13
1.2.4 嵌入式軟件系統 14
1.3 一些和嵌入式系統相關的術語介紹 16
1.3.1 集成電路及其生產過程 16
1.3.2 EDA 19
1.3.3 SoC 23
1.3.4 IP核 24
1.4 實例解析和習題 26
1.4.1 實例解析 26
1.4.2 本章習題 28
1.4.3 習題答案 28
第二章 嵌入式系統和數字媒體 29
2.1 信息和數字媒體 29
2.2 文本 29
2.2.1 文本基礎 30
2.2.2 字符集和編碼方式 30
2.2.3 文本的分類 34
2.2.4 文本的處理和展示 35
2.3 圖像 37
2.3.1 圖像的獲取 37
2.3.2 數字圖像的參數 38
2.3.3 圖像壓縮算法和常見文件類型 39
2.4 音頻 40
2.4.1 音頻的獲取 41
2.4.2 數字音頻的參數 41
2.4.3 音頻壓縮算法和常見文件的類型 42
2.5 視頻 43
2.5.1 視頻的獲取 43
2.5.2 視頻壓縮算法和視頻文件的類型 44
2.6 本章小結 45
2.7 實例解析和習題 45
2.7.1 實例解析 45
2.7.2 本章習題 47
2.7.3 習題答案 48
第三章 數字通信及計算機網絡 49
3.1 通信和通信系統 49
3.1.1 通信系統的分類 49
3.1.2 幾個數字通信中涉及的關鍵技術 51
3.1.3 數字通信系統的技術指標 54
3.2 計算機網絡 55
3.2.1 計算機網絡的組成 55
3.2.2 計算機網絡的分類 55
3.3.3 計算機網絡模型和TCP/IP協議 59
3.4 本章小結 65
3.5 實例解析和習題 65
3.5.1 實例解析 65
3.5.2 本章習題 66
3.5.3 習題答案 67
第四章 嵌入式處理器基礎及ARM 68
4.1 嵌入式系統的處理器的結構 68
4.1.1 指令結構 68
4.1.2 存儲結構 70
4.1.3 I/O端口編址方式 71
4.2 常見嵌入式處理器內核介紹 72
4.3 ARM處理器基礎 74
4.3.1 ARM處理器的發展 74
4.3.2 ARM處理器的架構、類型和型號 76
4.3.3 ARM處理器的一些相關術語 77
4.4 ARM處理器的分類和特點 78
4.4.1 ARM Classic系列 78
4.4.2 Cortex-M系列 79
4.4.3 Cortex-R系列 84
4.4.4 Cortex-A系列 86
4.4.5 Cortex-A50系列 88
4.4.5 ARM處理器總結 89
4.5 本章小結 89
4.6 實例解析和習題 89
4.6.1 實例解析 89
4.6.2 本章習題 90
4.6.3 習題答案 91
第五章 ARM處理器編程模型 92
5.1 ARM處理器的工作狀態 92
5.1.1 ARM狀態和Thumb/Thumb-2狀態 92
5.1.2 ARM狀態和Thumb狀態的切換 94
5.1.3 調試狀態 94
5.2 ARM處理器的工作模式 95
5.3 ARM處理器的寄存器組織 96
5.3.1 ARM狀態下的寄存器組織及其應用 96
5.3.2 Thumb狀態下的寄存器組織 99
5.4 ARM處理器的異常處理 100
5.4.1 ARM處理器支持的異常類型 101
5.4.2 ARM處理器的異常向量表和優先級 101
5.4.3 ARM處理器對異常的處理和返回 102
5.5 ARM處理器的數據類型和存儲格式 104
5.5.1 ARM處理器支持的數據類型 104
5.5.2 ARM處理器的存儲格式 105
5.6 ARM處理器的存儲器管理單元和存儲器保護單元 106
5.6.1 存儲器管理單元(MMU) 106
5.6.2 存儲器保護單元(MPU) 110
5.7 本章小結 110
5.8 實例解析和習題 110
5.8.1 實例解析 110
5.8.2 本章習題 112
5.8.3 習題答案 113
第六章 ARM處理器的指令系統和匯編語言程序設計 114
6.1 ARM處理器的指令分類和指令集 114
6.1.1 ARM處理器指令集的特點 114
6.1.2 ARM處理器指令的分類 115
6.1.3 ARM處理器的指令集 119
6.2 ARM處理器的指令格式 120
6.2.1 ARM處理器指令的組成 120
6.2.2 ARM處理器指令的條件域 121
6.3 ARM處理器的尋址方式 122
6.3.1 立即尋址 122
6.3.2 寄存器尋址 122
6.3.3 寄存器間接尋址 123
6.3.4 寄存器偏移尋址 123
6.3.5 基址尋址 124
6.3.6 多寄存器尋址 124
6.3.7 相對尋址 125
6.3.8 堆棧尋址 125
6.4 ARM處理器的偽指令 126
6.4.1 符號定義偽指令 127
6.4.2 數據定義偽指令 128
6.4.3 匯編控制偽指令 128
6.4.4 宏指令 129
6.4.5 其他 129
6.5 ARM處理器的匯編程序設計 130
6.5.1 ARM匯編語言的程序結構 130
6.5.2 ARM匯編語言的語句格式 131
6.5.4 ARM處理器匯編程序設計實例 131
6.6 匯編和C語言混合設計 135
6.6.1 ARM處理器ATPCS規則介紹 135
6.6.2 在C語言中使用匯編語言 137
6.6.3 在匯編語言中使用C語言 140
6.7 本章小結 143
6.8 實例解析和習題 144
6.8.1 實例解析 144
6.8.2 本章習題 145
6.8.3 習題答案 146
第七章 嵌入式系統的硬件結構 147
7.1 SoC的片上總線 147
7.1.1 SOC片上總線的特點和分類 147
7.1.2 AMBA片上總線介紹 151
7.1.3 基于AMBA片上總線的SoC芯片結構 152
7.2 ARM嵌入式系統核心結構 153
7.2.2 電源系統 153
7.2.3 復位系統 161
7.2.4 時鐘系統 163
7.3 常用ARM結構處理器及選擇方案 163
7.4 嵌入式系統的存儲器 164
7.4.1 存儲器的體系結構和性能指標 164
7.4.2 高速緩沖存儲器(Cache) 166
7.4.3 SDRAM存儲器 167
7.4.4 FLASH存儲器 170
7.4.4 E2PROM存儲器 176
7.4.5. 大容量存儲系統 176
7.5 本章小結 178
7.6 實例解析和習題 179
7.6.1 實例解析 179
7.6.2 本章習題 181
7.6.3 習題答案 181
第八章 嵌入式系統的外圍設備 182
8.1 輸入設備 182
8.1.1 按鍵 182
8.1.2 鍵盤 183
8.1.3 撥碼開關 185
8.1.4 觸摸屏 185
8.2 顯示設備 187
8.2.1 發光二極管 187
8.2.2 數碼管 188
8.2.2 液晶顯示 193
8.3 傳感器 194
8.3.1 溫度傳感器 194
8.3.2 時間傳感器 195
8.3.3 其他傳感器 196
8.4 本章小結 200
8.5 真題解析和習題 201
8.5.1 真題解析 201
8.5.2 本章習題 202
8.5.3 習題答案 203
第九章 嵌入式系統的輸入輸出接口 204
9.1 通用輸入輸出接口(GPIO) 204
9.2 UART接口 204
9.2.1 UART的通信協議 205
9.2.2 UART接口的硬件模塊 205
9.2.3 嵌入式處理器中的UART 206
9.3 I2C總線接口 207
9.3.1 I2C總線基礎 207
9.3.2 I2C總線的信號 208
9.3.3 I2C總線的地址 209
9.3.4 嵌入式處理器中的I2C總線接口 210
9.4 SPI總線接口 210
9.4.1 SPI總線的信號 210
9.4.2 嵌入式處理器中的SPI總線接口 211
9.5 1-wire總線接口 211
9.5.1 1-wire總線基礎 211
9.5.2 1-wire總線的命令和時序 212
9.5.2 嵌入式處理器中的1-wire總線接口 214
9.5 USB總線接口 214
9.5.1 USB總線的版本和特點 214
9.5.2 USB總線的組成和外部接口 215
9.5.3 嵌入式處理器中的USB總線 216
9.6 視頻接口(HDMI、VGA和DVI) 216
9.7 本章小結 217
9.8 真題解析和習題 218
9.8.1 真題解析 218
9.8.2 本章習題 219
9.8.3 習題答案 220
第十章 嵌入式系統的遠程通信接口 22