ARM嵌入式體系結構與接口技術:Cortex-A8版(附光碟)(簡體書)
商品資訊
系列名:高等院校嵌入式人才培養規劃教材
ISBN13:9787115317414
出版社:人民郵電出版社
作者:華清遠見嵌入式學院; 楊勝利; 劉洪濤 編著
出版日:2017/01/01
裝訂/頁數:平裝/256頁
附件:附光碟
規格:23.5cm*16.8cm (高/寬)
版次:1
商品簡介
作者簡介
名人/編輯推薦
目次
書摘/試閱
相關商品
商品簡介
本書在全面介紹CORTEX-A8處理器的體系結構、編程模型、指令系統及EclipseFor ARM開發環境的同時,以基於CORTEX-A8的應用處理器S5PC100為核心,詳細介紹了系統的設計及相關接口技術。接口技術中涵蓋了I/O、中斷、串口、存儲器、PWM、A/D、DMA、LCD、CamIF。書中提供了大量實驗內容。
本書可作為高等院校或高等職業院校電子、通信、自動化、計算機等專業的ARM體系結構、接口技術課程的教材,也可作為相關嵌入式開發人員的參考書。
本書可作為高等院校或高等職業院校電子、通信、自動化、計算機等專業的ARM體系結構、接口技術課程的教材,也可作為相關嵌入式開發人員的參考書。
作者簡介
華清遠見嵌入式學院介紹,華清遠見嵌入式學院是華清遠見教育集團在10年高端嵌入式人才培養的基礎上,傾力打造的“專業領域就業優勢倍增”項目,學院充分整合行業經驗及嵌入式領域的專業優勢,并借助自身豐富的企業合作資源及專業、科學的實訓體系,幫助合作院校時刻緊跟行業用人需求的最新趨勢,引導畢業生在知識結構上更好地實現與企業真實需求的對接,從而有效提高其就業競爭優勢,順利進入嵌入式專業領域。
名人/編輯推薦
《高等院校嵌入式人才培養規劃教材:ARM嵌入式體系結構與接口技術(Cortex-A8版)》可作為高等院校或高等職業院校電子、通信、自動化、計算機等專業的ARM體系結構、接口技術課程的教材,也可作為相關嵌入式開發人員的參考書。
目次
第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 嵌入式系統開發概述
小結
思考與練習
第2章 ARM技術概述
2.1 ARM體系結構的技術特征及發展
2.1.1 ARM公司簡介
2.1.2 ARM技術特征
2.1.3 ARM體系結構的發展
2.2 ARM微處理器簡介
2.2.1 ARM7處理器系列
2.2.2 ARM9處理器系列
2.2.3 ARM9E 處理器系列
2.2.4 ARM11處理器系列
2.2.5 SecurCore處理器系列
2.2.6 StrongARM和Xscale處理器系列
2.2.7 MPCore處理器系列
2.2.8 Cortex處理器系列
2.3 ARM微處理器結構
2.4 ARM微處理器的應用選型
2.4.1 ARM芯片選擇的一般原則
2.4.2 選擇一款適合教學的ARM芯片
2.5 Cortex—A8內部功能及特點
2.6 數據類型
2.6.1 ARM的基本數據類型
2.6.2 浮點數據類型
2.6.3 存儲器大/小端
2.7 Cortex—A8內核工作模式
2.8 Cortex—A8存儲系統
2.8.1 協處理器
2.8.2 存儲管理單元
2.8.3 高速緩沖存儲器
2.8.4 NEON技術
2.8.5 安全域(TrustZone)
2.9 流水線
2.9.1 流水線的概念與原理
2.9.2 流水線的分類
2.9.3 影響流水線性能的因素
2.10 寄存器組織
2.11 程序狀態寄存器
2.12 SAMSUNG S5PC100處理器介紹
小結
思考與練習
第3章 ARM的指令集合
3.1 ARM指令集
3.1.1 數據操作指令
3.1.2 乘法指令
3.1.3 Load/Store指令
3.1.4 跳轉指令
3.1.5 狀態操作指令
3.1.6 協處理器指令
3.1.7 異常產生指令
3.2 ARM指令的尋址方式
小結
思考與練習
第4章 GNU匯編偽指令集
4.1 GNU匯編器的平臺無關偽指令
4.1.1 偽指令概念
4.1.2 符號定義偽指令
4.1.3 數據定義偽指令
4.1.4 匯編控制偽操作
4.1.5 雜項偽操作
4.2 GNU匯編器支持的ARM偽指令
4.2.1 ADR偽指令
4.2.2 ADRL偽指令
4.2.3 LDR偽指令
4.3 ARM匯編語言的程序結構
4.3.1 匯編語言的程序格式
4.3.2 匯編語言的子程序調用
4.3.3 過程調用標準AAPCS/ATPCS
4.3.4 匯編語言程序設計舉例
4.4 匯編語言與C語言的混合編程
4.4.1 GNU內聯匯編
4.4.2 C和匯編的混合編程
小結
思考與練習
第5章 ARM集成開發環境搭建
5.1 FS—JTAG仿真器介紹
5.2 開發環境搭建
5.2.1 開發工具的安裝
5.2.2 創建一個新工程
5.2.3 調試工程
小結
思考與練習
第6章 GPIO編程
6.1 GPIO功能介紹
6.2 S5PC100芯片的GPIO控制器介紹
6.2.1 特性
6.2.2 GPIO分組預覽
6.2.3 S5PC100的GPIO常用寄存器分類
6.2.4 S5PC100 I/O接口常用寄存器詳解
6.3 S5PC100的GPIO的實例
6.3.1 電路原理
6.3.2 寄存器設置
6.3.3 程序編寫
小結
思考與練習
第7章 ARM系統時鐘及編程
7.1 S5PC100時鐘域的劃分
7.2 S5PC100時鐘的產生過程分析
7.2.1 時鐘的產生
7.2.2 模塊對應的時鐘域
7.3 S5PC100時鐘源的選擇
7.3.1 時鐘來自于外部引腳
7.3.2 時鐘來自于時鐘管理單元(CMU)
7.4 S5PC100時鐘的配置
7.5 S5PC100時鐘配置寄存器描述
7.6 S5PC100時鐘源配置示例
小結
思考與練習
第8章 ARM異常處理及編程
8.1 ARM異常中斷處理概述
8.2 ARM體系異常種類
8.3 ARM異常的優先級
8.4 ARM處理器模式和異常
8.5 ARM異常響應和處理程序返回
8.5.1 中斷響應的概念
8.5.2 ARM異常響應流程
8.5.3 從異常處理程序中返回
8.6 ARM系統中異常中斷處理程序的安裝
8.7 ARM的SWI異常中斷處理程序設計
8.8 FIQ和IRQ異常中斷程序設計
8.9 基于Cortex—A8內核的S5PC100異常程序設計
8.9.1 S5PC100中斷機制分析
8.9.2 S5PC100中斷處理程序實例
小結
思考與練習
第9章 串行通信接口
9.1 串行通信
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 S5PC100異步串行通信
9.2.1 S5PC100串口控制器概述
9.2.2 S5PC100串口控制器寄存器
9.3 串口發送接收程序示例
9.3.1 電路連接
9.3.2 程序的編寫
9.3.3 調試與運行程序
小結
思考與練習
第10章 PWM定時器
10.1 S5PC100 PWM定時器
10.1.1 PWM定時器概述
10.1.2 PWM定時器特點
10.1.3 PWM定時器的寄存器
10.1.4 PWM定時器示例
10.2 S5PC100看門狗定時器
10.2.1 S5PC100看門狗定時器概述
10.2.2 看門狗定時器寄存器
10.2.3 看門狗定時器程序編寫
小結
思考與練習
第11章 A/D轉換器
11.1 A/D轉換器原理
11.1.1 A/D轉換基礎
11.1.2 A/D轉換的技術指標
11.1.3 A/D轉換器類型
11.1.4 A/D轉換的一般步驟
11.2 S5PC100 A/D轉換器
11.2.1 S5PC100 A/D轉換器概述
11.2.2 S5PC100 A/D控制器寄存器
11.3 A/D轉換器示例
11.3.1 電路連接
11.3.2 程序的編寫
11.3.3 調試與運行結果
小結
思考與練習
第12章 實時時鐘RTC
12.1 RTC介紹
12.2 RTC控制器
12.3 RTC控制器寄存器詳解
12.4 RTC應用示例
小結
思考與練習
第13章 I2C總線
13.1 I2C總線
13.1.1 I2C總線介紹
13.1.2 I2C總線術語
13.1.3 I2C總線位傳輸
13.1.4 I2C總線數據傳輸
13.1.5 I2C總線尋址方式
13.1.6 快速和高速模式
13.2 I2C總線控制器
13.2.1 S5PC100下的I2C控制器介紹
13.2.2 I2C總線控制寄存器詳解
13.3 I2C總線應用示例
13.3.1 電路原理分析
13.3.2 代碼實現
小結
思考與練習
第14章 存儲器接口
14.1 Flash ROM介紹
14.2 NOR Flash操作
14.2.1 AM29LV160D芯片介紹
14.2.2 AM29LV160D字編程操作
14.2.3 AM29LV160D扇區/塊擦除操作
14.2.4 AM29LV160D芯片擦除操作
14.2.5 AM29LV160D與S5PC100的接口電路
14.2.6 AM29LV160D存儲器的程序設計
14.3 NAND Flash操作
14.3.1 芯片介紹
14.3.2 讀操作過程
14.3.3 擦除操作過
14.3.4 寫操作過程
14.4 S5PC100中NAND Flash控制器的操作
14.4.1 S5PC100中NAND Flash控制器概述
14.4.2 S5PC100中NAND Flash控制器寄存器詳解
14.5 S5PC100 NAND Flash接口電路與程序設計
14.5.1 K9F2G080U和S5PC100的接口電路
14.5.2 S5PC100控制K9F2G080U的程序設計
小結
思考與練習
第15章 SPI接口
15.1 SPI總線協議理論
15.1.1 協議簡介
15.1.2 協議內容
15.2 SPI控制器詳解
15.2.1 S5PC100的SPI控制器簡介
15.2.2 時鐘源控制
15.2.3 寄存器詳解
15.3 SPI接口應用示例
小結
思考與練習
第16章 DMA控制器
16.1 PL330原理概述
16.1.1 DMAC簡述
16.1.2 S5PC100下的DMAC模型
16.1.3 PL330簡述
16.2 PL330詳解
16.2.1 PL330指令集
16.2.2 相關寄存器詳解
16.3 S5PC100 PL330示例
小結
思考與練習
第17章 LCD接口技術
17.1 LCD控制器原理概述
17.1.1 LCD控制器介紹
17.1.2 S5PC100的 LCD控制器介紹
17.1.3 S5PC100的LCD控制器操作
17.1.4 LCD控制器寄存器
17.2 LCD控制器應用示例
小結
思考與練習
第18章 CAMIF接口技術
18.1 V9650介紹
18.1.1 芯片功能描述
18.1.2 OV9650物理參數
18.1.3 OV9650寄存器詳解
18.2 SCCB總線
18.2.1 SCCB協議介紹
18.2.2 SCCB的總線編程
18.3 CAMIF接口詳解
18.3.1 基于S5PC100的CAMIF接口介紹
18.3.2 S5PC100 CAMIF寄存器詳解
18.3.3 CAMIF應用示例
小結
思考與練習
參考文獻
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 嵌入式系統開發概述
小結
思考與練習
第2章 ARM技術概述
2.1 ARM體系結構的技術特征及發展
2.1.1 ARM公司簡介
2.1.2 ARM技術特征
2.1.3 ARM體系結構的發展
2.2 ARM微處理器簡介
2.2.1 ARM7處理器系列
2.2.2 ARM9處理器系列
2.2.3 ARM9E 處理器系列
2.2.4 ARM11處理器系列
2.2.5 SecurCore處理器系列
2.2.6 StrongARM和Xscale處理器系列
2.2.7 MPCore處理器系列
2.2.8 Cortex處理器系列
2.3 ARM微處理器結構
2.4 ARM微處理器的應用選型
2.4.1 ARM芯片選擇的一般原則
2.4.2 選擇一款適合教學的ARM芯片
2.5 Cortex—A8內部功能及特點
2.6 數據類型
2.6.1 ARM的基本數據類型
2.6.2 浮點數據類型
2.6.3 存儲器大/小端
2.7 Cortex—A8內核工作模式
2.8 Cortex—A8存儲系統
2.8.1 協處理器
2.8.2 存儲管理單元
2.8.3 高速緩沖存儲器
2.8.4 NEON技術
2.8.5 安全域(TrustZone)
2.9 流水線
2.9.1 流水線的概念與原理
2.9.2 流水線的分類
2.9.3 影響流水線性能的因素
2.10 寄存器組織
2.11 程序狀態寄存器
2.12 SAMSUNG S5PC100處理器介紹
小結
思考與練習
第3章 ARM的指令集合
3.1 ARM指令集
3.1.1 數據操作指令
3.1.2 乘法指令
3.1.3 Load/Store指令
3.1.4 跳轉指令
3.1.5 狀態操作指令
3.1.6 協處理器指令
3.1.7 異常產生指令
3.2 ARM指令的尋址方式
小結
思考與練習
第4章 GNU匯編偽指令集
4.1 GNU匯編器的平臺無關偽指令
4.1.1 偽指令概念
4.1.2 符號定義偽指令
4.1.3 數據定義偽指令
4.1.4 匯編控制偽操作
4.1.5 雜項偽操作
4.2 GNU匯編器支持的ARM偽指令
4.2.1 ADR偽指令
4.2.2 ADRL偽指令
4.2.3 LDR偽指令
4.3 ARM匯編語言的程序結構
4.3.1 匯編語言的程序格式
4.3.2 匯編語言的子程序調用
4.3.3 過程調用標準AAPCS/ATPCS
4.3.4 匯編語言程序設計舉例
4.4 匯編語言與C語言的混合編程
4.4.1 GNU內聯匯編
4.4.2 C和匯編的混合編程
小結
思考與練習
第5章 ARM集成開發環境搭建
5.1 FS—JTAG仿真器介紹
5.2 開發環境搭建
5.2.1 開發工具的安裝
5.2.2 創建一個新工程
5.2.3 調試工程
小結
思考與練習
第6章 GPIO編程
6.1 GPIO功能介紹
6.2 S5PC100芯片的GPIO控制器介紹
6.2.1 特性
6.2.2 GPIO分組預覽
6.2.3 S5PC100的GPIO常用寄存器分類
6.2.4 S5PC100 I/O接口常用寄存器詳解
6.3 S5PC100的GPIO的實例
6.3.1 電路原理
6.3.2 寄存器設置
6.3.3 程序編寫
小結
思考與練習
第7章 ARM系統時鐘及編程
7.1 S5PC100時鐘域的劃分
7.2 S5PC100時鐘的產生過程分析
7.2.1 時鐘的產生
7.2.2 模塊對應的時鐘域
7.3 S5PC100時鐘源的選擇
7.3.1 時鐘來自于外部引腳
7.3.2 時鐘來自于時鐘管理單元(CMU)
7.4 S5PC100時鐘的配置
7.5 S5PC100時鐘配置寄存器描述
7.6 S5PC100時鐘源配置示例
小結
思考與練習
第8章 ARM異常處理及編程
8.1 ARM異常中斷處理概述
8.2 ARM體系異常種類
8.3 ARM異常的優先級
8.4 ARM處理器模式和異常
8.5 ARM異常響應和處理程序返回
8.5.1 中斷響應的概念
8.5.2 ARM異常響應流程
8.5.3 從異常處理程序中返回
8.6 ARM系統中異常中斷處理程序的安裝
8.7 ARM的SWI異常中斷處理程序設計
8.8 FIQ和IRQ異常中斷程序設計
8.9 基于Cortex—A8內核的S5PC100異常程序設計
8.9.1 S5PC100中斷機制分析
8.9.2 S5PC100中斷處理程序實例
小結
思考與練習
第9章 串行通信接口
9.1 串行通信
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 S5PC100異步串行通信
9.2.1 S5PC100串口控制器概述
9.2.2 S5PC100串口控制器寄存器
9.3 串口發送接收程序示例
9.3.1 電路連接
9.3.2 程序的編寫
9.3.3 調試與運行程序
小結
思考與練習
第10章 PWM定時器
10.1 S5PC100 PWM定時器
10.1.1 PWM定時器概述
10.1.2 PWM定時器特點
10.1.3 PWM定時器的寄存器
10.1.4 PWM定時器示例
10.2 S5PC100看門狗定時器
10.2.1 S5PC100看門狗定時器概述
10.2.2 看門狗定時器寄存器
10.2.3 看門狗定時器程序編寫
小結
思考與練習
第11章 A/D轉換器
11.1 A/D轉換器原理
11.1.1 A/D轉換基礎
11.1.2 A/D轉換的技術指標
11.1.3 A/D轉換器類型
11.1.4 A/D轉換的一般步驟
11.2 S5PC100 A/D轉換器
11.2.1 S5PC100 A/D轉換器概述
11.2.2 S5PC100 A/D控制器寄存器
11.3 A/D轉換器示例
11.3.1 電路連接
11.3.2 程序的編寫
11.3.3 調試與運行結果
小結
思考與練習
第12章 實時時鐘RTC
12.1 RTC介紹
12.2 RTC控制器
12.3 RTC控制器寄存器詳解
12.4 RTC應用示例
小結
思考與練習
第13章 I2C總線
13.1 I2C總線
13.1.1 I2C總線介紹
13.1.2 I2C總線術語
13.1.3 I2C總線位傳輸
13.1.4 I2C總線數據傳輸
13.1.5 I2C總線尋址方式
13.1.6 快速和高速模式
13.2 I2C總線控制器
13.2.1 S5PC100下的I2C控制器介紹
13.2.2 I2C總線控制寄存器詳解
13.3 I2C總線應用示例
13.3.1 電路原理分析
13.3.2 代碼實現
小結
思考與練習
第14章 存儲器接口
14.1 Flash ROM介紹
14.2 NOR Flash操作
14.2.1 AM29LV160D芯片介紹
14.2.2 AM29LV160D字編程操作
14.2.3 AM29LV160D扇區/塊擦除操作
14.2.4 AM29LV160D芯片擦除操作
14.2.5 AM29LV160D與S5PC100的接口電路
14.2.6 AM29LV160D存儲器的程序設計
14.3 NAND Flash操作
14.3.1 芯片介紹
14.3.2 讀操作過程
14.3.3 擦除操作過
14.3.4 寫操作過程
14.4 S5PC100中NAND Flash控制器的操作
14.4.1 S5PC100中NAND Flash控制器概述
14.4.2 S5PC100中NAND Flash控制器寄存器詳解
14.5 S5PC100 NAND Flash接口電路與程序設計
14.5.1 K9F2G080U和S5PC100的接口電路
14.5.2 S5PC100控制K9F2G080U的程序設計
小結
思考與練習
第15章 SPI接口
15.1 SPI總線協議理論
15.1.1 協議簡介
15.1.2 協議內容
15.2 SPI控制器詳解
15.2.1 S5PC100的SPI控制器簡介
15.2.2 時鐘源控制
15.2.3 寄存器詳解
15.3 SPI接口應用示例
小結
思考與練習
第16章 DMA控制器
16.1 PL330原理概述
16.1.1 DMAC簡述
16.1.2 S5PC100下的DMAC模型
16.1.3 PL330簡述
16.2 PL330詳解
16.2.1 PL330指令集
16.2.2 相關寄存器詳解
16.3 S5PC100 PL330示例
小結
思考與練習
第17章 LCD接口技術
17.1 LCD控制器原理概述
17.1.1 LCD控制器介紹
17.1.2 S5PC100的 LCD控制器介紹
17.1.3 S5PC100的LCD控制器操作
17.1.4 LCD控制器寄存器
17.2 LCD控制器應用示例
小結
思考與練習
第18章 CAMIF接口技術
18.1 V9650介紹
18.1.1 芯片功能描述
18.1.2 OV9650物理參數
18.1.3 OV9650寄存器詳解
18.2 SCCB總線
18.2.1 SCCB協議介紹
18.2.2 SCCB的總線編程
18.3 CAMIF接口詳解
18.3.1 基于S5PC100的CAMIF接口介紹
18.3.2 S5PC100 CAMIF寄存器詳解
18.3.3 CAMIF應用示例
小結
思考與練習
參考文獻
書摘/試閱
2.中斷源的概念
仔細研究一下生活中的中斷,對于理解中斷的概念也很有好處。什么可以引起中斷?生活中很多事件可以引起中斷:有人按了門鈴了,電話鈴響了,鬧鐘響了,燒的水開了等諸如此類的事件。把可以引起中斷的信號源稱之為中斷源。
3.中斷優先級的概念
設想一下,你正在看書,電話鈴響了,同時又有人按了門鈴,你該先做哪樣呢?如果你正在等一個很重要的電話,你一般不會去理會門鈴的,而反之,你正在等一個重要的客人,則可能就不會去理會電話了。如果不是這兩者(即不等電話,也不是等人上門),你可能會按你通常的習慣去處理。總之這里存在一個優先級的問題,處理器中斷也是如此,也有優先級的問題,即同時有多個中斷源遞交中斷申請時,中斷控制器對中斷源的響應存在優先級別。需要注意的是優先級的問題不僅僅發生在兩個中斷同時產生的情況,也發生在一個中斷已產生,又有一個中斷產生的情況,比如你正接電話,有人按門鈴的情況,或你正開門與人交談,又有電話響了的情況。這時也需要根據中斷源的優先級來決定下一動作。
ARM處理器中有7種類型的異常,按優先級從高到低的順序排列如下:復位異常(Reset)、數據異常( Data Abort)、快速中斷異常(FIQ),外部中斷異常(IRQ)、預取異常(PrefetchAbort)、軟件中斷(SWI)和未定義指令異常(Undefined Instruction)。
在ARM處理器中異常(Exception)和中斷(Interrupt)有些差別,異常主要是從處理器被動接受異常的角度出發,而中斷帶有向處理器主動申請的色彩。在本書中,對“異常”和“中斷”不做嚴格區分,兩者都是指請求處理器打斷正常的程序執行流程,進入特定程序循環的一種機制。
主題書展
更多
主題書展
更多書展今日66折
您曾經瀏覽過的商品
購物須知
大陸出版品因裝訂品質及貨運條件與台灣出版品落差甚大,除封面破損、內頁脫落等較嚴重的狀態,其餘商品將正常出貨。
特別提醒:部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。
無現貨庫存之簡體書,將向海外調貨:
海外有庫存之書籍,等候約45個工作天;
海外無庫存之書籍,平均作業時間約60個工作天,然不保證確定可調到貨,尚請見諒。
為了保護您的權益,「三民網路書店」提供會員七日商品鑑賞期(收到商品為起始日)。
若要辦理退貨,請在商品鑑賞期內寄回,且商品必須是全新狀態與完整包裝(商品、附件、發票、隨貨贈品等)否則恕不接受退貨。
優惠價:87
260
海外經銷商無庫存,到貨日平均30天至45天