ARM處理器開發詳解:基於ARM Cortex-A9處理器的開發設計

ARM處理器開發詳解:基於ARM Cortex-A9處理器的開發設計

《ARM處理器開發詳解:基於ARM Cortex-A9處理器的開發設計》是2016年電子工業出版社出版的圖書,由華清遠見嵌入式學院、秦山虎、劉洪濤編寫。

內容簡介

作為一種32位高性能、低成本的嵌入式RISC微處理器,ARM目前已經成為套用最廣泛的嵌入式處理器。目前Cortex-A系列處理器已經占據了大部分中高端產品市場。在全面介紹Cortex-A9處理器的體系結構、編程模型、指令系統及開發環境的同時,以基於Cortex-A9的套用處理器――S5PV210為核心,詳細介紹了系統的設計及相關接口技術。接口技術涵蓋了I/O、中斷、串口、存儲器、PWM、A/D、DMA、IIC、SPI、Camera、LCD等,並提供了大量的實驗例程。

目錄

第1 章 嵌入式系統基礎知識

1.1 嵌入式系統概述

1.1.1 嵌入統簡介

1.1.2 嵌入式系統的特點

1.1.3 嵌入式系統的發展

1.2 嵌入式系統的組成

1.2.1 嵌入式系統硬體組成

1.2.2 嵌入式系統軟體組成

1.3 嵌入式作業系統舉例

1.3.1 商業版嵌入式作業系統

1.3.2 開源版嵌入式作業系統

1.4 嵌入式系統開發概述

1.5 學好微處理器在嵌入式學習中的重要性

1.6 本章小結

1.7 練習題

第2 章 嵌入式ARM 技術概論

2.1 ARM 體系結構的技術特徵及發展

2.1.1 ARM 公司簡介

2.1.2 ARM 技術特徵

2.1.3 ARM 體系架構的發展

2.2 ARM 微處理器簡介

2.2.1 ARM9 處理器系列

2.2.2 ARM9E 處理器系列

2.2.3 ARM11 處理器系列

2.2.4 SecurCore 處理器系列

2.2.5 StrongARM 和Xscale 處理器系列VI

2.2.6 MPCore 處理器系列

2.2.7 Cortex 處理器系列

2.2.8 最新ARM 套用處理器發展現狀

2.3 ARM 微處理器結構

2.3.1 ARM 微處理器的套用選型

2.3.2 選擇ARM 晶片的一般原則

2.3.3 選擇一款適合ARM 教學的CPU

2.4 Cortex-A9 內部功能及特點

2.5 數據類型

2.5.1 ARM 的基本數據類型

2.5.2 浮點數據類型

2.5.3 存儲器大/小端

2.6 Cortex-A9 核心工作模式

2.7 Cortex-A9 存儲系統

2.7.1 協處理器(CP15)

2.7.2 存儲管理單元(MMU)

2.7.3 高速緩衝存儲器(Cache)

2.8 流水線

2.8.1 流水線的概念與原理

2.8.2 流水線的分類

2.8.3 影響流水線性能的因素

2.9 暫存器組織

2.10 程式狀態暫存器

2.11 三星Exynos4412 處理器介紹

2.12 FS4412 開發平台介紹

2.13 本章小結

2.14 練習題

第3 章 ARM微處理器的指令系統

3.1 ARM 處理器的定址方式

3.1.1 數據處理指令定址方式

3.1.2 記憶體訪問指令定址方式

3.2 ARM 處理器的指令集

3.2.1 數據操作指令

3.2.2 乘法指令

3.2.3 Load/Store 指令

3.2.4 跳轉指令

3.2.5 狀態操作指令

3.2.6 協處理器指令

3.2.7 異常產生指令

3.2.8 其他指令介紹

3.3 本章小結

3.4 練習題

第4章 ARM彙編語言程式設計

4.1 GNU ARM 彙編器支持的偽操作

4.1.1 偽操作概述

4.1.2 數據定義(Data Definition)偽操作

4.1.3 彙編控制偽操作

4.1.4 雜項偽操作

4.2 ARM 彙編器支持的偽指令

4.2.1 ADR 偽指令

4.2.2 ADRL 偽指令

4.2.3 LDR 偽指令

4.3 GNU ARM 彙編語言的語句格式

4.4 ARM 彙編語言的程式結構

4.4.1 彙編語言的程式格式

4.4.2 彙編語言子程式調用

4.4.3 過程調用標準AAPCS

4.4.4 彙編語言程式設計舉例

4.5 彙編語言與C 語言的混合編程

4.5.1 GNU ARM 內聯彙編

4.5.2 混合編程調用舉例

4.6 本章小結

4.7 練習題

第5 章 ARM開發及環境搭建

5.1 仿真器簡介

5.1.1 FS-JTAG 仿真器介紹

5.1.2 ULINK 介紹

5.2 開發環境搭建

5.2.1 XP 環境安裝FS-JTAG 工具

5.2.2 開發板硬體連線

5.2.3 USB 轉串口驅動安裝

5.2.4 Putty 串口終端配置

5.3 Eclipse for ARM 使用

5.4 在開發環境中添加FS4412 工程

5.5 編譯工程

5.6 調試工程

5.6.1 配置FS-JTAG 調試工具

5.6.2 配置調試工具

5.7 本章小結

5.8 練習題

第6 章 GPIO

6.1 GPIO 功能介紹

6.2 Exynos4412-GPIO 控制器詳解

6.2.1 GPIO 功能描述

6.2.2 GPIO 特性

6.2.3 GPIO 分組

6.2.4 GPIO 常用暫存器分類

6.2.5 GPIO 暫存器詳解

6.2.6 GPIO 暫存器封裝

6.3 GPIO 的套用實例

6.3.1 GPIO 實例內容和原理

6.3.2 GPIO 實例硬體連線

6.3.3 GPIO 實例軟體設計

6.3.4 GPIO 實例代碼

6.3.5 GPIO 實例現象

6.4 本章小結

6.5 練習題

第7 章 ARM異常及中斷處理

7.1 ARM 異常中斷處理概述

7.2 ARM 體系異常種類

7.3 ARM 異常的優先權

7.4 ARM 處理器模式和異常

7.5 ARM 異常回響和處理程式返回

7.5.1 中斷回響的概念

7.5.2 ARM 異常回響流程

7.5.3 從異常處理程式中返回

7.6 ARM 的SWI 異常中斷處理程式設計

7.7 本章小結

7.8 練習題

第8 章 FIQ和IRQ 中斷

8.1 ARM 中斷控制器簡介

8.1.1 中斷軟體分支處理(NVIC 和GIC)

8.1.2 硬體支持的分支處理(VIC)

8.2 通用中斷控制器(GIC)

8.2.1 GIC 功能模組

8.2.2 GIC 中斷控制器中斷類型

8.2.3 GIC 中斷控制器中斷狀態

8.2.4 GIC 中斷處理流程

8.3 Exynos4412 中斷源

8.4 Exynos4412-GIC 暫存器詳解

8.5 GIC 中斷套用實例

8.5.1 GIC 中斷實例內容和原理

8.5.2 GIC 中斷實例硬體連線

8.5.3 GIC 中斷實例軟體設計

8.5.4 GIC 中斷實例代碼

8.5.5 GIC 中斷實例現象

8.6 本章小結

8.7 練習題

第9 章 通用異步收發(UART)接口

9.1 通用異步收發(UART)接口簡介

9.1.1 串列通信與並行通信概念

9.1.2 異步串列方式的特點

9.1.3 異步串列方式的數據格式

9.1.4 同步串列方式的特點

9.1.5 同步串列方式的數據格式

9.1.6 波特率、波特率因子與位周期

9.1.7 RS-232C 串口規範

9.1.8 RS-232C 接線方式

9.2 Exynos4412-UART 控制器詳解

9.2.1 UART 控制器概述

9.2.2 UART 控制器框架圖

9.2.3 UART 暫存器詳解

9.3 UART 接口套用實例

9.3.1 UART 接口實例內容和原理

9.3.2 UART 實例硬體連線

9.3.3 UATR 實例軟體編寫

9.3.4 UART 實例調試和運行現象

9.4 本章小結

9.5 練習題

第10 章 PWM 定時器

10.1 定時器和PWM 簡介

10.1.1 定時器概述

10.1.2 脈衝寬度調製(PWM)概述

10.2 Exynos4412-PWM 定時器詳解

10.2.1 PWM 定時器概述

10.2.2 PWM 定時器暫存器詳解

10.2.3 PWM 定時器雙緩衝功能

10.2.4 PWM 信號輸出

10.3 PWM 定時器套用實例一:定時觸發

10.3.1 定時觸發實例內容和原理

10.3.2 定時觸發實例硬體連線

10.3.3 定時觸發軟體設計和代碼

10.3.4 定時觸發實例現象

10.4 PWM 定時器套用實例二:PWM 輸出

10.4.1 PWM 輸出實例內容和原理

10.4.2 PWM 輸出實例硬體連線

10.4.3 PWM 輸出軟體設計

10.4.4 PWM 輸出實例現象

10.5 本章小結

10.6 練習題

第11 章 看門狗定時器

11.1 看門狗簡介

11.2 Exynos4412 看門狗定時器詳解

11.2.1 看門狗定時器概述

11.2.2 看門狗定時器暫存器詳解

11.3 看門狗定時器實例

11.3.1 看門狗定時器實例內容和原理

11.3.2 看門狗定時器實例軟體設計

11.3.3 看門狗定時器實例代碼

11.3.4 看門狗定時器實例現象

11.4 本章小結

11.5 練習題

第12 章 RTC 定時器

12.1 RTC 定時器簡介

12.2 Exynos4412-RTC 定時器詳解

12.2.1 RTC 定時器概述

12.2.2 RTC 定時器暫存器詳解

12.2.3 BCD 碼

12.3 RTC 定時器實例

12.3.1 RTC 定時器實例內容和原理

12.3.2 RTC 定時器實例軟體設計

12.3.3 RTC 定時器實例代碼

12.3.4 RTC 定時器實例現象

12.4 本章小結

12.5 練習題

第13 章 A/D 轉換器

13.1 A/D 轉換器原理

13.1.1 A/D 轉換基礎

13.1.2 A/D 轉換的技術指標

13.1.3 A/D 轉換器類型

13.1.4 A/D 轉換的一般步驟

13.2 Exynos4412- A/D 轉換器概述

13.2.1 A/D 轉換器概述

13.2.2 A/D 轉換器特點

13.2.3 A/D 轉換器暫存器解析

13.3 A/D 轉換器套用實例

13.3.1 A/D 轉換器實例內容和原理

13.3.2 A/D 轉換器實例硬體連線

13.3.3 A/D 轉換器實例軟體設計

13.3.4 A/D 轉換器實例代碼

13.3.5 A/D 轉換器實例現象

13.4 本章小結

13.5 練習題

第14 章 I2C 匯流排

14.1 I2C 匯流排協定

14.1.1 I2C 匯流排協定簡介

14.1.2 I2C 匯流排協定內容

14.2 Exynos4412-I2C 控制器詳解

14.2.1 I2C 控制器概述II

14.2.2 I2C 控制器框架圖

14.2.3 I2C 控制器暫存器詳解

14.2.4 I2C 控制器操作流程

14.3 I2C 接口套用實例

14.3.1 I2C 實例內容和原理

14.3.2 I2C 實例硬體連線

14.3.3 I2C 實例軟體設計

14.3.4 I2C 實例代碼

14.3.5 I2C 實例現象

14.4 本章小結

14.5 練習題

第15 章 SPI 接口

15.1 SPI 匯流排協定

15.1.1 SPI 匯流排協定簡介

15.1.2 SPI 匯流排協定內容

15.2 Exynos4412-SPI 控制器詳解

15.2.1 SPI 控制器概述 .

15.2.2 SPI 控制器時鐘源控制

15.2.3 SPI 控制器暫存器詳解

15.3 SPI 接口套用實例

15.3.1 SPI 實例內容和原理

15.3.2 SPI 實例硬體連線

15.3.3 SPI 實例軟體設計

15.3.4 SPI 實例代碼

15.3.5 SPI 實例現象

15.4 本章小結

15.5 練習題

相關詞條

熱門詞條

聯絡我們