國產(chǎn)32位微控制器APM32E103原理與應用
定 價:58 元
叢書名:高等院校電子信息類專業(yè)"互聯(lián)網(wǎng)+"創(chuàng)新規(guī)劃教材
- 作者:丁勵,郜超軍,侯廣乾 主編
- 出版時間:2024/9/1
- ISBN:9787301353141
- 出 版 社:北京大學出版社
- 中圖法分類:TP368.1
- 頁碼:312
- 紙張:
- 版次:1
- 開本:16開
本書以珠海極海半導體有限公司設(shè)計生產(chǎn)的APM32E103微控制器為例,詳細講解了ARM Cortex-M3處理器內(nèi)核的基本原理及APM32E103微控制器的外設(shè)接口、SDK庫和編程。主要內(nèi)容包括ARM Cortex-M3處理器內(nèi)核、APM32E103微控制器及SDK庫、通用輸入輸出、中斷和事件、定時器、USART接口、I2C接口、模擬量模塊AD/DA、DMA控制器、SPI接口、SDIO接口、實時時鐘和備份寄存器、CAN接口、EMMC控制器和USB接口及其他外設(shè)應用實例。本書在重視基礎(chǔ)知識的同時,還列舉了大量翔實的實例,這些實例大部分源自編者在微控制器測試過程中的積累與沉淀。
本書可作為高等院校計算機、自動化、電子信息、測控技術(shù)、電氣工程等專業(yè)開設(shè)嵌入式微控制器課程的教材,也可作為從事嵌入式微控制器開發(fā)及應用的相關(guān)工程技術(shù)人員的參考用書。
丁勵
----------------------------
丁勵,鄭州大學—艾派克集成電路設(shè)計與應用研究院院長;浙江大學電氣工程學院研究生企業(yè)導師;浙江省浙江大學-珠海艾派克聯(lián)合實驗室副主任;教育部嵌入式系統(tǒng)廣東省珠海分中心副主任;廣東省珠海市軟件行業(yè)協(xié)會專家委員會副主任職務;教育部重點實驗室“光電成像技術(shù)與系統(tǒng)”珠海分室學術(shù)委員會委員;珠海市集成電路行業(yè)杰出人物;獲“珠海市香洲區(qū)人才”稱號;中國第一枚通用耗材芯片設(shè)計者,基于國產(chǎn)CPU打印機主控SoC芯片研發(fā)帶頭人,2017年國家01重大專項負責人。
郜超軍
----------------------------
郜超軍,鄭州大學-艾派克集成電路設(shè)計與應用研究院副院長。授權(quán)軟件著作權(quán)1項,實用新型6項、發(fā)明專利2項;集成電路布圖登記10項;參與《國產(chǎn)打印機核心SoC芯片系列化自主研制及規(guī)模化應用》項目,獲得中國電子學會科技進步一等獎。指導學生參加研究生電子設(shè)計大賽獲得國家特等獎,為鄭州大學歷史最高獎項。指導學生參加“互聯(lián)網(wǎng)+”大賽,獲得國家金獎。
侯廣乾
----------------------------
侯廣乾,鄭州大學-艾派克集成電路設(shè)計與應用研究院副院長;極海微電子股份有限公司監(jiān)事、研發(fā)總監(jiān);珠海艾派克盈豐投資中心(有限合伙)執(zhí)行事務合伙人。
2011年,獲得珠海市科技進步一等獎;2014年,獲得珠海市青年優(yōu)秀人才榮譽稱號;2019年,獲得廣東省科技進步二等獎;2017年-2020年,主導參與工信部核高基《國產(chǎn)嵌入式CPU規(guī);瘧谩讽椖; 2021年,獲得珠海市科技進步特等獎;2022年,獲得中國電子學會科技進步一等獎。
目 錄
第1章 ARM Cortex-M3處理器內(nèi)核 1
1.1 ARM Cortex-M3處理器概述 1
1.1.1 ARM Cortex-M3處理器簡介 1
1.1.2 ARM Cortex-M3處理器特性 2
1.2 ARM Cortex-M3處理器架構(gòu) 2
1.2.1 架構(gòu)簡介及模塊框圖 3
1.2.2 操作模式和狀態(tài) 5
1.2.3 寄存器 5
1.3 指令集 7
1.3.1 指令集背景簡介 7
1.3.2 指令集分類 8
1.4 異常和中斷 10
1.4.1 異常 10
1.4.2 嵌套向量中斷控制器(NVIC) 11
1.4.3 向量表 12
1.5 存儲器系統(tǒng) 13
1.5.1 存儲器特性簡介 13
1.5.2 存儲器映射 13
1.6 復位 14
1.7 調(diào)試 15
本章小結(jié) 17
習題1 17
第2章 APM32E103微控制器及SDK庫 18
2.1 APM32E103微控制器 18
2.1.1 概述 18
2.1.2 系統(tǒng)架構(gòu) 18
2.1.3 存儲器映射 22
2.1.4 位段 23
2.1.5 啟動配置 24
2.1.6 電源 24
2.1.7 復位 25
2.1.8 時鐘 26
2.2 APM32E103微控制器的SDK庫 28
2.2.1 SDK庫概述 28
2.2.2 SDK庫的使用 30
2.2.3 SDK例程使用 35
2.3 本章小結(jié) 37
習題2 37
第3章 通用輸入輸出 38
3.1 通用輸入輸出概述 38
3.1.1 GPIO功能及配置 38
3.1.2 AFIO功能及配置 41
3.2 GPIO框圖剖析及原理 42
3.2.1 GPIO輸入模式剖析 43
3.2.2 GPIO輸出模式剖析 44
3.2.3 GPIO位帶操作原理 46
3.2.4 GPIO初始化結(jié)構(gòu)體 47
3.3 APM32-GPIO編程實例 48
3.3.1 實例目標 48
3.3.2 硬件設(shè)計 48
3.3.3 軟件設(shè)計 49
3.3.4 下載驗證 51
本章小結(jié) 52
習題3 52
第4章 中斷和事件 53
4.1 中斷和事件概述 53
4.2 NVIC原理及配置 54
4.2.1 中斷和異常向量表 54
4.2.2 中斷優(yōu)先級 58
4.2.3 中斷掛起與解掛 59
4.2.4 中斷活動與使能控制 60
4.2.5 中斷編程要點 60
4.3 EINT原理及框圖分析 61
4.3.1 EINT中斷/事件線路 61
4.3.2 EINT結(jié)構(gòu)框圖分析 62
4.3.3 EINT中斷/事件配置 64
4.3.4 EINT中斷、事件線對比 66
4.4 中斷和事件編程實例 67
4.4.1 實例目標 67
4.4.2 硬件設(shè)計 67
4.4.3 軟件設(shè)計 67
4.4.4 下載驗證 70
本章小結(jié) 72
習題4 72
第5章 定時器 73
5.1 APM32E103微控制器的定時器 73
5.2 APM32E103微控制器的基本定時器(TMR6/7) 75
5.2.1 基本定時器的主要結(jié)構(gòu) 75
5.2.2 時鐘源選擇 75
5.2.3 計數(shù)方式 76
5.2.4 基本定時器的寄存器 77
5.3 APM32E103微控制器的通用定時器(TMR2/3/4/5) 77
5.3.1 通用定時器的主要結(jié)構(gòu) 77
5.3.2 計數(shù)模式 79
5.3.3 輸入捕獲模式 82
5.3.4 比較輸出模式 83
5.3.5 PWM輸出模式 83
5.3.6 PWM輸入模式 84
5.3.7 單脈沖模式 85
5.3.8 編碼器接口模式 85
5.3.9 強制輸出模式 85
5.3.10 中斷和DMA請求 85
5.4 APM32E103微控制器的高級定時器(TMR1/8) 85
5.5 APM32E103微控制器的定時器編程 88
5.5.1 與定時器相關(guān)的庫函數(shù) 88
5.5.2 定時器編程實例 91
本章小結(jié) 94
習題5 94
第6章 USART接口 95
6.1 串行通信簡介 95
6.2 APM32E103微控制器的USART簡介 98
6.2.1 主要特征 99
6.2.2 功能簡介 99
6.2.3 USART中斷 101
6.2.4 USART的DMA操作 102
6.3 USART串口通信編程 103
6.3.1 USART初始化 103
6.3.2 APM32E103微控制器的USART庫函數(shù) 104
6.3.3 串口中斷收發(fā)實例 105
本章小結(jié) 109
習題6 109
第7章 I2C接口 110
7.1 I2C總線概述 110
7.1.1 I2C總線物理結(jié)構(gòu) 110
7.1.2 I2C總線數(shù)據(jù)傳輸 112
7.2 APM32E103微控制器的I2C接口 115
7.2.1 主要特點 116
7.2.2 APM32E103微控制器I2C接口結(jié)構(gòu) 116
7.2.3 I2C通信中的事件 126
7.2.4 工作模式 128
7.2.5 I2C中斷 129
7.2.6 I2C接口的DMA操作 130
7.3 APM32E103微控制器的I2C接口編程 131
7.3.1 I2C的相關(guān)庫函數(shù) 131
7.3.2 I2C編程實例 133
本章小結(jié) 139
習題7 139
第8章 模擬量模塊AD/DA 140
8.1 模擬/數(shù)字轉(zhuǎn)換器概述 140
8.2 APM32E103微控制器的ADC功能描述 141
8.2.1 APM32E103微控制器的ADC簡介 141
8.2.2 ADC的轉(zhuǎn)換模式 142
8.2.3 單通道轉(zhuǎn)換 143
8.2.4 多通道轉(zhuǎn)換 144
8.2.5 ADC的相關(guān)設(shè)置 149
8.3 APM32E103微控制器的ADC編程 152
8.3.1 編程步驟 152
8.3.2 編程具體示例 153
8.4 數(shù)字/模擬轉(zhuǎn)換器概述 156
8.5 APM32E103微控制器的DAC功能描述 158
8.5.1 APM32E103微控制器的DAC功能簡介 158
8.5.2 DAC的相關(guān)設(shè)置 159
8.6 APM32E103微控制器的DAC編程 161
本章小結(jié) 163
習題8 164
第9章 DMA控制器 165
9.1 DMA概述 165
9.2 APM32E103微控制器的DMA功能描述 166
9.2.1 DMA簡介 166
9.2.2 DMA請求 167
9.2.3 DMA傳輸 168
9.3 APM32E103微控制器的DMA編程 170
本章小結(jié) 174
習題9 174
第10章 SPI接口 175
10.1 SPI總線概述 175
10.1.1 SPI總線物理結(jié)構(gòu) 175
10.1.2 SPI總線數(shù)據(jù)傳輸 177
10.2 APM32E103微控制器的SPI接口 179
10.2.1 主要特性 179
10.2.2 主要結(jié)構(gòu) 180
10.3 APM32E103微控制器的SPI編程 187
10.3.1 SPI庫函數(shù) 187
10.3.2 SPI編程實例 189
10.4 APM32E103微控制器的I2S接口 195
10.4.1 I2S總線物理結(jié)構(gòu) 195
10.4.2 I2S設(shè)備互聯(lián) 196
10.4.3 I2S數(shù)據(jù)格式 197
10.4.4 APM32E103微控制器的I2S接口簡介 198
本章小結(jié) 200
習題10 200
第11章 SDIO接口 201
11.1 SDIO簡介 201
11.1.1 SDIO總線物理層 201
11.1.2 SDIO總線協(xié)議 202
11.2 APM32E103微控制器的SDIO 206
11.2.1 主要特征 206
11.2.2 功能描述 207
11.2.3 標準庫介紹 207
11.3 SD卡讀寫測試實例 210
11.3.1 硬件設(shè)計 210
11.3.2 軟件設(shè)計 211
11.3.3 實例輸出結(jié)果 213
本章小結(jié) 213
習題11 213
第12章 實時時鐘和備份寄存器 214
12.1 實時時鐘概述 214
12.1.1 內(nèi)部結(jié)構(gòu) 214
12.1.2 功能特性 215
12.1.3 復位過程 216
12.2 備份寄存器(BAKPR) 217
12.3 RTC編程 218
12.3.1 RTC初始化 218
12.3.2 RTC時間寫入初始化 219
12.3.3 APM32E103微控制器的RTC庫函數(shù) 220
12.3.4 利用APM32E103微控制器的RTC模塊實現(xiàn)數(shù)字日歷和鬧鐘功能實例 220
本章小結(jié) 227
習題12 227
第13章 CAN接口 228
13.1 CAN協(xié)議簡介 228
13.1.1 CAN物理層 229
13.1.2 CAN協(xié)議層 236
13.2 CAN控制器 240
13.2.1 CAN功能及配置 240
13.2.2 CAN編程要點 249
13.3 APM32E103 CAN編程 254
13.3.1 目標 254
13.3.2 工作原理 254
13.3.3 編程要點及代碼分析 254
13.3.4 下載驗證 257
本章小結(jié) 258
習題13 258
第14章 EMMC控制器和
USB接口 259
14.1 EMMC控制器 259
14.1.1 EMMC控制器介紹 259
14.1.2 EMMC控制器實例 261
14.2 USB接口 266
14.2.1 USB應用場景 266
14.2.2 USB模擬HID設(shè)備
實例 268
本章小結(jié) 280
習題14 280
第15章 其他外設(shè)應用實例 281
15.1 SysTick 281
15.2 看門狗定時器 283
15.3 Flash及ISP、IAP編程 285
15.3.1 APM32E103微控制器芯片啟動方式介紹 285
15.3.2 ISP編程實驗 286
15.3.3 IAP編程實例 287
15.4 浮點運算單元 292
15.4.1 APM32E103微控制器的FPU 292
15.4.2 浮點運算單元編程實例 293
15.5 功耗管理 295
15.5.1 供電方案 296
15.5.2 SLEEP模式編程實例 297
15.5.3 STANDBY模式
編程實例 300
本章小結(jié) 302
習題15 302
參考文獻 303
特別鳴謝 304