作 者:華清遠見嵌入式學院 劉洪濤 秦山虎 著
定 價:49.8
出 版 社:人民郵電出版社
出版日期:2017年03月01日
頁 數:224
裝 幀:簡裝
ISBN:9787115449092
靠前靠前的嵌入式培訓機構華清遠見出品,作者具有多年從業經驗,真正從企業用人需求出發,培養和提升讀者能力; 歷經市場考驗,第三次修訂改版; 書中配有大量微課,詳細講解重點難點。
●章 嵌入式ARM技術概論 11.1 ARM體繫結構的技術特征及發展 21.1.1 ARM公司簡介 21.1.2 ARM技術特征 21.1.3 ARM體繫架構的發展 31.2 ARM微處理器簡介 41.2.1 ARM9處理器繫列 51.2.2 ARM9E處理器繫列 51.2.3 ARM11處理器繫列 61.2.4 SecurCore處理器繫列 61.2.5 StrongARM和Xscale處理器繫列 61.2.6 MPCore處理器繫列 61.2.7 Cortex處理器繫列 61.2.8 ARM應用處理器發展現狀與趨勢 81.3 ARM微處理器架構 91.4 ARM微處理器的應用選型 101.4.1 ARM芯片選擇的一般原則 101.4.2 選擇一款適合ARM教學的CPU 101.5 Cortex-A9內部功能及特點 121.6 數據類型 131.6.1 ARM的基本數據類型 131.6.2 浮點數據類型 131.6.3 存儲器大/小端 141.7 Cortex-A9內核工作模式 141.8 Cortex-A9存儲繫統 151.8.1 協處理器(CP15) 161.8.2 存儲(MMU) 171.8.3 高速緩衝存儲器(Cache) 171.9 流水線 171.9.1 流水線的概念與原理 171.9.2 流水線的分類 181.9.3 影響流水線性能的因素 191.10 寄存器組織 191.11 程序狀態寄存器 211.12 三星Exynos4412處理器介紹 241.13 FS4412開發平臺介紹 251.14 本章小結 291.15 練習題 29第2章 ARM開發環境搭建 302.1 仿真器簡介 312.2 開發環境搭建 312.2.1 Windows XP環境安裝FS-JTAG工具 322.2.2 Windows 7/Windows 8環境安裝FS-JTAG工具 342.2.3 Windows8.1環境安裝FS-JTAG工具 392.2.4 連接硬件平臺 422.2.5 USB轉串口驅動安裝 422.2.6 Putty串口終端配置 432.3 Eclipse for ARM使用 452.4 導入一個已有工程 452.5 調試工程 492.5.1 配置FS-JTAG調試工具 492.5.2 配置調試工具 492.5.3 查看變量及寄存器的方法 532.5.4 斷點設置方法 542.5.5 查看內存數據信息方法 542.5.6 調試結束後的處理 552.6 創建一個新工程 562.7 編譯工程 582.8 64位eclipse編譯常見問題及解決 602.9 本章小結 622.10 練習題 62第3章 ARM指令 633.1 ARM指令集 643.1.1 數據處理指令尋址方式 643.1.2 乘法指令 693.1.3 跳轉指令 713.1.4 Load/Store指令 743.1.5 狀態寄存器傳輸指令 793.1.6 協處理器指令 813.1.7 異常產生指令 823.2 ARM指令的尋址方式 843.2.1 數據處理指令的操作數的尋址方式 843.2.2 字及無符號字節的Load/Store指令的尋址方式 853.2.3 批量Load/Store指令的尋址方式 863.2.4 相對尋址 883.3 本章小結 883.4 練習題 88第4章 ARM彙編程序設計 894.1 GNU ARM彙編器的偽操作 904.1.1 符號定義偽操作 904.1.2 數據定義偽操作 914.1.3 彙編控制偽操作 934.1.4 雜項偽操作 944.2 ARM彙編器支持的偽指令 964.2.1 ADR偽指令 964.2.2 ADRL偽指令 974.2.3 LDR偽指令 974.3 ARM彙編語言的程序結構 984.3.1 彙編語言的程序格式 984.3.2 彙編語言的子程序調用 994.3.3 彙編語言程序設計舉例 994.4 彙編語言與C語言的混合編程 1004.4.1 GNU內聯彙編 1004.4.2 C和彙編的相互調用 1034.4.3 過程調用標準AAPCS/ATPCS 1044.5 本章小結 1054.6 練習題 105第5章 GPIO編程 1065.1 GPIO功能介紹 1075.2 Exynos4412-GPIO控制器詳解 1075.2.1 GPIO功能描述 1075.2.2 GPIO特性 1075.2.3 GPIO分組預覽 1085.2.4 Exynos4412-GPIO常用寄存器分類 1085.2.5 Exynos4412-GPIO接口常用寄存器詳解 1095.2.6 GPIO寄存器封裝 1105.3 GPIO控制實驗 1125.3.1 實驗目的 1125.3.2 實驗原理 1125.3.3 實驗內容 1135.3.4 實驗代碼 1135.3.5 實驗現像 1145.4 本章小結 1145.5 練習題 114第6章 ARM異常及中斷處理 1156.1 ARM異常中斷處理概述 1166.2 ARM體繫異常種類 1166.3 ARM異常的優先級 1216.4 ARM處理器模式和異常 1216.5 ARM異常響應和處理程序返回 1226.5.1 中斷響應的概念 1226.5.2 ARM異常響應流程 1226.5.3 從異常處理程序中返回 1236.6 ARM的SWI異常中斷處理程序設計 1246.7 ARM中斷控制器簡介 1266.7.1 中斷軟件分支處理(NVIC和GIC) 1266.7.2 硬件支持的分支處理(VIC) 1276.8 通用中斷控制器(GIC) 1286.8.1 GIC功能模塊 1296.8.2 GIC中斷控制器中斷類型 1306.8.3 GIC中斷控制器中斷狀態 1306.8.4 GIC中斷處理流程 1306.9 Exynos4412中斷源 1316.10 Exynos4412-GIC寄存器詳解 1316.11 GIC中斷實驗 1356.11.1 實驗目的 1356.11.2 實驗原理 1356.11.3 實驗內容 1366.11.4 實驗代碼 1376.11.5 實驗現像 1406.12 本章小結 1406.13 練習題 140第7章 串行通信接口 1417.1 串行通信概述 1427.1.1 串行通信與並行通信概念 1427.1.2 異步串行方式的特點 1427.1.3 異步串行方式的數據格式 1427.1.4 同步串行方式的特點 1427.1.5 同步串行方式的數據格式 1437.1.6 波特率、波特率因子與位周期 1437.1.7 RS-232C串口規範 1437.1.8 RS-232C接線方式 1457.2 Exynos4412異步串行通信 1457.2.1 Exynos4412串口控制器概述 1457.2.2 UART寄存器詳解 1467.3 串口通信實驗 1517.3.1 實驗目的 1517.3.2 實驗原理 1517.3.3 實驗內容 1527.3.4 實驗代碼 1527.3.5 實驗現像 1547.4 本章小結 1557.5 練習題 155第8章 PWM定時器 1568.1 定時器和PWM簡介 1578.1.1 定時器概述 1578.1.2 脈衝寬度調制(PWM)概述 1578.2 Exynos4412-PWM定時器詳解 1578.2.1 PWM定時器概述 1578.2.2 PWM定時器寄存器詳解 1588.2.3 PWM定時器雙緩衝功能 1618.2.4 PWM定時器PWM信號輸出 1628.3 PWM定時器實驗—定時觸發 1638.3.1 實驗目的 1638.3.2 實驗原理 1638.3.3 實驗代碼 1638.3.4 實驗現像 1658.4 PWM定時器實驗—PWM輸出 1668.4.1 實驗目的 1668.4.2 實驗原理 1668.4.3 實驗代碼 1668.4.4 實驗現像 1678.5 本章小結 1678.6 練習題 167第9章 看門狗定時器 1689.1 看門狗簡介 1699.2 Exynos4412看門狗定時器詳解 1699.2.1 看門狗定時器概述 1699.2.2 看門狗定時器寄存器詳解 1709.3 看門狗定時器實驗 1719.3.1 實驗目的 1719.3.2 實驗原理 1719.3.3 實驗內容 1719.3.4 實驗代碼 1719.3.5 實驗現像 1729.4 本章小結 1739.5 練習題 1730章 RTC定時器 17410.1 RTC簡介 17510.2 Exynos4412-RTC定時器詳解 17510.2.1 RTC定時器概述 17510.2.2 RTC定時器寄存器詳解 17510.2.3 BCD碼 17710.3 實時時鐘RTC實驗 17710.3.1 實驗目的 17710.3.2 實驗原理 17710.3.3 實驗內容 17810.3.4 實驗代碼 17810.3.5 實驗現像 17910.4 本章小結 18010.5 練習題 1801章 A/D轉換器 18111.1 A/D 轉換器原理 18211.1.1 A/D轉換基礎 18211.1.2 A/D轉換的技術指標 18211.1.3 A/D轉換器類型 18311.1.4 A/D轉換的一般步驟 18611.2 Exynos4412-A/D轉換器詳解 18611.2.1 Exynos4412-A/D轉換器概述 18611.2.2 Exynos4412-A/D轉換器寄存器詳解 18711.3 A/D實驗 18811.3.1 實驗目的 18811.3.2 實驗原理 18811.3.3 實驗內容 18811.3.4 實驗代碼 18911.3.5 實驗現像 19111.4 本章小結 19111.5 練習題 1922章 I2C接口 19312.1 I2C總線協議 19412.1.1 I2C總線協議簡介 19412.1.2 I2C總線協議內容 19412.2 Exynos4412-I2C控制器詳解 19712.2.1 I2C總線控制器概述 19712.2.2 I2C總線控制器寄存器詳解 19712.2.3 I2C控制器操作流程 20012.3 I2C重力感應/陀螺儀實驗 20112.3.1 實驗目的 20112.3.2 實驗原理 20112.3.3 實驗內容 20212.3.4 實驗代碼 20312.3.5 實驗現像 20612.4 本章小結 20712.5 練習題 2073章 SPI接口 20813.1 SPI總線協議 20913.1.1 協議簡介 20913.1.2 協議內容 20913.2 Exynos4412-SPI控制器詳解 21213.2.1 SPI控制器簡介 21213.2.2 SPI控制器時鐘源控制 21213.2.3 SPI控制器寄存器詳解 21513.3 SPI/CAN總線實驗 21813.3.1 實驗目的 21813.3.2 實驗原理 21813.3.3 實驗內容 21913.3.4 實驗代碼 22013.3.5 實驗現像 22313.4 本章小結 22413.5 練習題 224
作為一種32位高性能、低成本的嵌入式RISC微處理器,ARM已經成為應用很廣泛的嵌入式處理器。目前Cortex-A繫列處理器已經占據了大部分的中高端產品市場。 本書在全面介紹Cortex-A9處理器的體繫結構、編程模型、指令繫統及Eclipse For ARM開發環境搭建的同時,以基於Cortex-A9為核心的應用處理器Exynos4412為核心,詳細介紹了ARM繫統設計及相關接口技術。接口技術涵蓋了GPIO、GIC、UART、PWM、RTC、WDT、A/D、I2C、SPI等,並提供了大量的實驗例程和視頻講解,通過練習和操作實踐,幫助讀者鞏固所學的內容。本書可以作為院校嵌入式相關專業和計算機相關專業的教材,也可以作為計算機軟硬件培訓班教材,還可以作為嵌入式研究方向的專業人纔和廣大計算機愛好者的自學教材。
華清遠見嵌入式學院 劉洪濤 秦山虎 著
劉洪濤,北京華清遠見科技信息有限公司技術總監,ARM公司全球認證講師。參與編寫過幾十本專業圖書;國內知名物聯網方向技術顧問;首批高校物聯網專業建設教學指導委員會專家委員會成員;豐富的嵌入式及物聯網繫統軟、硬件產品開發經驗;主持開發過多個大型嵌入式及物聯網項目,涉及工業控制、網絡、通訊、消費電子等眾多領域。