內容簡介
本書基於ARM9處理器核心,以三星S3C2440晶片為藍本,介紹了嵌入式系統相關概念、嵌入式微處理器、ARM定址方式和指令系統、簡單嵌入式套用的軟體和硬體設計。全書共9章,第1章嵌入式基礎知識,第2章ARM處理器及系統結構,第3章ARM定址方式和指令系統,第4章ARM偽指令,第5章ARM編程基礎,第6章S3C2440基礎部分及套用,第7章S3C2440存儲器部分及套用,第8章S3C2440外部設備部分,第9章基於S3C2440綜合套用。
圖書目錄
第1章 嵌入式基礎知識 1
1.1 嵌入式的相關概念 1
1.1.1 嵌入式系統 1
1.1.2 嵌入式系統的組成 1
1.1.3 嵌入式系統的分類 4
1.1.4 嵌入式處理器 5
1.1.5 嵌入式計算機系統與通用計算機系統 6
1.1.6 ISP和IAP概念 6
1.1.7 嵌入式系統的特點 6
1.1.8 嵌入式系統的套用 7
1.1.9 微處理器的體系結構 7
1.1.10 RISC與CISC 8
1.2 嵌入式處理器的選擇 9
1.2.1 明確套用需求 9
1.2.2 對上市的嵌入式處理器供應商
進行調查 9
1.2.3 選擇時應注意的問題 9
1.3 嵌入式系統開發流程 10
1.3.1 軟體開發工具 11
1.3.2 硬體開發工具 13
1.3.3 嵌入式系統的調試 13
1.4 常用嵌入式作業系統 14
1.4.1 μC/OS-II 15
1.4.2 嵌入式Linux 16
1.4.3 Windows Embeded 16
1.4.4 VxWorks 18
1.4.5 Android 18
1.4.6 iOS 19
思考題 19
第2章 ARM處理器及系統結構 20
2.1 ARM公司簡介 20
2.2 ARM處理器版本系列 22
2.2.1 ARM處理器簡介 22
2.2.2 ARM9系列 22
2.2.3 ARM版本系列及產品介紹 23
2.3 ARM9系列處理器核心 23
2.3.1 ARM9系列處理器核心簡介 23
2.3.2 ARM處理器的工作模式 26
2.3.3 ARM的暫存器組織 27
2.3.4 ARM存儲系統的組織 31
2.4 ARM處理器的中斷(異常) 32
2.4.1 中斷和異常的基本概念 32
2.4.2 中斷的處理過程 36
2.4.3 ARM的中斷(異常)向量表 36
2.4.4 ARM中斷(異常)的管理 37
2.4.5 ARM中斷(異常)運行
模式 39
思考題 43
第3章 ARM定址方式和指令
系統 44
3.1 ARM定址方式 44
3.1.1 基本概念 44
3.1.2 定址方式 45
3.2 ARM指令系統 47
3.2.1 相關概念 47
3.2.2 指令系統 48
3.2.3 指令集 52
思考題 71
第4章 ARM偽指令 72
4.1 偽指令 72
4.2 ARM中的宏和宏指令 72
4.2.1 什麼是宏 72
4.2.2 ARM中的宏和宏指令及其
用法 73
4.3 ARM彙編器所支持的偽指令 77
4.3.1 變數定義或賦值偽指令 77
4.3.2 定義暫存器列表偽指令 78
4.3.3 數據定義偽指令 79
4.3.4 控制程式流向偽指令 82
4.3.5 其他偽指令 83
4.4 彙編語言編程規範 88
思考題 94
第5章 ARM編程基礎 95
5.1 程式設計的基本概念 95
5.2 ARM工程 96
5.3 ARM程式框架 98
5.4 ARM彙編語言程式設計 99
5.4.1 段 99
5.4.2 IF分支程式設計 100
5.4.3 SWITCH分支程式設計 103
5.4.4 帶ARM/Thumb狀態切換的分支程式設計 104
5.4.5 循環程式設計 105
5.4.6 子程式及其調用 106
5.4.7 C語言程式與彙編語言程式之間的函式調用 108
5.5 排序程式設計 115
5.5.1 排序的概念 115
5.5.2 濾波的概念及種類 116
5.5.3 中值濾波及程式設計 116
5.5.4 均值濾波及程式設計 118
5.6 數制轉換及程式設計 120
5.6.1 數制轉換 120
5.6.2 程式設計 122
5.7 編碼轉換及程式設計 124
5.7.1 編碼轉換 124
5.7.2 BCD碼轉換為LED碼程式
設計 125
思考題 128
第6章 S3C2440A微處理器基礎及套用 129
6.1 S3C2440A微處理器概述 129
6.2 電源子系統 132
6.2.1 S3C2440A微處理器電源引腳
介紹 132
6.2.2 S3C2440A微處理器電源子系統的設計與實現 133
6.3 復位子系統 138
6.3.1 復位的概念及作用 138
6.3.2 S3C2440A微處理器復位引腳
介紹 139
6.3.3 S3C2440A微處理器復位電路的設計與實現 139
6.4 時鐘和功率管理子系統 142
6.4.1 S3C2440A微處理器時鐘和功率管理引腳介紹 143
6.4.2 時鐘源選擇電路 143
6.4.3 時鐘發生器 144
6.4.4 時鐘發生器和功率模組特殊
暫存器 150
6.4.5 S3C2440A微處理器時鐘電路的設計與實現 153
6.5 I/O連線埠 154
6.5.1 GPA連線埠控制描述 154
6.5.2 GPB連線埠控制描述 156
6.5.3 GPC連線埠控制描述 157
6.5.4 GPD連線埠控制描述 159
6.5.5 GPE連線埠控制描述 161
6.5.6 GPF連線埠控制描述 162
6.5.7 GPG連線埠控制描述 164
6.5.8 GPH連線埠控制描述 166
6.5.9 GPJ連線埠控制描述 167
6.5.10 上拉電阻/下拉電阻 168
6.6 簡單套用實例 170
思考題 171
第7章 S3C2440A微處理器存儲器部分及套用 172
7.1 存儲器控制器及套用 172
7.1.1 概述 172
7.1.2 存儲器類型 174
7.1.3 存儲器控制器簡介 177
7.1.4 存儲器控制器功能描述 180
7.1.5 S3C2440A微處理器存儲器控制器暫存器 187
7.1.6 存儲器擴展實例及編程套用 192
7.2 NAND Flash控制器及套用 197
7.2.1 NAND Flash控制器的特性 197
7.2.2 NAND Flash配置暫存器 202
7.2.3 NAND Flash控制暫存器 203
7.2.4 NAND Flash命令暫存器 205
7.2.5 NAND Flash地址暫存器 205
7.2.6 NAND Flash數據暫存器 205
7.2.7 NAND Flash狀態暫存器 206
7.2.8 K9F2G08U0C NAND Flash
存儲器 206
7.2.9 K9F2G08U0C NAND Flash
存儲器套用 212
思考題 218
第8章 S3C2440A微處理器外圍
電路部分 219
8.1 DMA 219
8.1.1 DMA簡介 219
8.1.2 DMA工作原理 219
8.1.3 DMA特殊功能暫存器 221
8.2 中斷控制器 228
8.2.1 中斷控制器的操作 228
8.2.2 中斷優先權 229
8.2.3 中斷控制器的特殊功能
暫存器 230
8.3 PWM定時器 239
8.3.1 PWM概念 239
8.3.2 PWM定時器結構與功能 240
8.3.3 PWM定時器操作 241
8.3.4 PWM定時器的特殊功能
暫存器 245
8.4 UART連線埠 251
8.4.1 UART連線埠概述 251
8.4.2 UART連線埠的操作 252
8.4.3 UART特殊功能暫存器 256
8.4.4 對外引腳 264
思考題 264
第9章 基於S3C2440A微處理器
的綜合套用 265
9.1 S3C2440A微處理器引導 265
9.2 輸入/輸出設備 275
9.2.1 基本概念 275
9.2.2 鍵盤 275
9.2.3 數碼顯示器 278
9.3 綜合套用實例 280
9.3.1 流水燈控制系統的設計與
實現 280
9.3.2 模擬打桌球系統的設計與
實現 282
參考文獻 288
作者簡介
何興高,男,碩士、高級工程師,1988年畢業於電子科學技術大學計算機硬體專業,畢業後一直在電子科技大學從事科研、教學、實驗工作。長期承擔本科生“51單片機”“ARM微處理器”等嵌入式硬體開發課程的教學任務;承擔研究生“現代數字系統設計”“逆向工程實踐”的教學任務;先後負責了多項自動控制項目、廣域網套用項目、網路安全套用項目的研究與開發工作。獲省科技進步二等獎1次,省科技進步三等獎1次,工程經驗豐富,熟悉計算機軟體和硬體開發。