嵌入式微控制器原理及設(shè)計(jì)——基于STM32及Proteus仿真開發(fā)
定 價(jià):49 元
- 作者:畢盛
- 出版時(shí)間:2021/12/1
- ISBN:9787121425035
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP332.021
- 頁(yè)碼:228
- 紙張:
- 版次:01
- 開本:16開
本書基于STM32芯片及Proteus仿真開發(fā)來講述嵌入式微控制器原理與設(shè)計(jì),主要內(nèi)容包括:嵌入式系統(tǒng)開發(fā)的相關(guān)背景;嵌入式ARM芯片體系結(jié)構(gòu)及匯編語(yǔ)言;嵌入式系統(tǒng)開發(fā)環(huán)境、工具、編程語(yǔ)言及庫(kù)函數(shù);嵌入式芯片基本組成、最小系統(tǒng)、下載方式和低功耗模式;嵌入式芯片接口和嵌入式操作系統(tǒng)。本書分別對(duì)微控制器常見的GPIO、中斷、異步串行通信、同步串行通信、高級(jí)定時(shí)器、通用定時(shí)器、滴答時(shí)鐘、ADC、DMA、總線及USB接口進(jìn)行了講解;同時(shí)對(duì)嵌入式物聯(lián)網(wǎng)操作系統(tǒng)進(jìn)行了介紹,基于?C/OS-II展開并說明嵌入式操作系統(tǒng)的核心內(nèi)容和功能;最后通過一個(gè)小車的實(shí)例說明嵌入式系統(tǒng)綜合實(shí)例的實(shí)現(xiàn)過程。本書在講解各個(gè)知識(shí)點(diǎn)的同時(shí)設(shè)計(jì)了Proteus仿真開發(fā)實(shí)例,從而有助于讀者對(duì)各個(gè)知識(shí)點(diǎn)的理解。本書可作為高等院校電子工程、自動(dòng)化、計(jì)算機(jī)科學(xué)及技術(shù)和電氣工程等專業(yè)教材和參考書,也可供相關(guān)工程技術(shù)人員參考。
畢盛,華南理工大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院副教授,一直從事高校嵌入式系統(tǒng)、機(jī)器人方向的教學(xué)和科研工作,指導(dǎo)學(xué)生實(shí)踐創(chuàng)新活動(dòng),發(fā)表過論文多篇。
第1章 嵌入式系統(tǒng)與微控制器 1
1.1 嵌入式系統(tǒng)相關(guān)概念 1
1.1.1 什么是嵌入式系統(tǒng) 1
1.1.2 嵌入式系統(tǒng)的特點(diǎn) 1
1.1.3 嵌入式系統(tǒng)主要組成 1
1.1.4 嵌入式芯片類型 3
1.2 微控制器 4
1.2.1 微控制器特點(diǎn) 4
1.2.2 微控制器芯片型號(hào)及發(fā)展歷史 4
1.2.3 ARM微控制器介紹 6
1.2.4 STM32 ARM Cortex-M微控制器 7
1.3 嵌入式系統(tǒng)開發(fā) 8
1.3.1 方案設(shè)計(jì)及芯片選型 8
1.3.2 嵌入式系統(tǒng)硬件開發(fā) 8
1.3.3 嵌入式系統(tǒng)軟件開發(fā) 9
1.3.4 嵌入式代碼編譯 11
1.3.5 嵌入式代碼下載及調(diào)試 11
1.4 微控制器芯片的發(fā)展趨勢(shì) 12
習(xí)題1 13
第2章 微控制器體系結(jié)構(gòu)及匯編語(yǔ)言 14
2.1 Cortex-M3內(nèi)核體系架構(gòu) 15
2.1.1 Cortex-M3總體架構(gòu) 15
2.1.2 Cortex-M3總線接口 16
2.1.3 Cortex-M3寄存器 16
2.1.4 Cortex-M3操作模式 18
2.1.5 Cortex-M3存儲(chǔ)器映射 19
2.1.6 流水線 19
2.1.7 異常和中斷 20
2.1.8 存儲(chǔ)器保護(hù)單元(MPU) 20
2.2 匯編指令尋址方式 20
2.3 ARM指令集 22
2.3.1 指令基本形式 22
2.3.2 ARM指令集條件碼 23
2.3.3 ARM指令種類 23
2.4 Thumb指令集 28
習(xí)題2 29
第3章 微控制器硬件系統(tǒng) 31
3.1 微控制器概述 31
3.1.1 STM32F103內(nèi)部結(jié)構(gòu) 31
3.1.2 STM32F103常用接口 33
3.1.3 STM32F103系列微控制器簡(jiǎn)介 35
3.2 微控制器基本電路 36
3.2.1 電源電路 36
3.2.2 復(fù)位電路 37
3.2.3 時(shí)鐘源 38
3.2.4 時(shí)鐘管理單元 39
3.2.5 下載電路 41
3.2.6 啟動(dòng)配置電路 42
3.3 微控制器低功耗模式 43
習(xí)題3 44
第4章 微控制器軟件開發(fā) 45
4.1 微控制器開發(fā)語(yǔ)言 45
4.1.1 開發(fā)語(yǔ)言介紹 45
4.1.2 嵌入式C語(yǔ)言 46
4.2 微控制器開發(fā)庫(kù)函數(shù) 51
4.2.1 STM32開發(fā)庫(kù)函數(shù)介紹 51
4.2.2 STM32 STD庫(kù) 53
4.2.3 STM32 HAL庫(kù)和LL庫(kù) 54
4.3 微控制器開發(fā)環(huán)境 56
4.3.1 MDK開發(fā)環(huán)境 56
4.3.2 STM32CubeMX軟件 57
4.4 微控制器虛擬仿真環(huán)境 58
4.5 微控制器程序調(diào)試和下載 60
習(xí)題4 61
第5章 GPIO 62
5.1 GPIO結(jié)構(gòu)及特點(diǎn) 62
5.1.1 GPIO功能模式 62
5.1.2 GPIO特點(diǎn)及操作 63
5.1.3 GPIO開發(fā)實(shí)例 64
5.2 GPIO寄存器開發(fā)方式 65
5.2.1 GPIO寄存器說明 65
5.2.2 GPIO寄存器實(shí)現(xiàn)應(yīng)用實(shí)例 66
5.3 GPIO STD庫(kù)開發(fā)方式 67
5.3.1 GPIO STD庫(kù)函數(shù)說明 67
5.3.2 GPIO STD庫(kù)應(yīng)用實(shí)例 69
5.4 GPIO HAL庫(kù)開發(fā)方式 71
5.4.1 GPIO HAL庫(kù)函數(shù)說明 71
5.4.2 GPIO HAL庫(kù)應(yīng)用實(shí)例 73
5.5 GPIO LL庫(kù)開發(fā)方式 76
5.5.1 GPIO LL庫(kù)函數(shù)說明 76
5.5.2 GPIO LL庫(kù)應(yīng)用實(shí)例 79
5.6 GPIO應(yīng)用開發(fā)實(shí)例 80
5.6.1 數(shù)碼管顯示實(shí)例 80
5.6.2 行列式鍵盤掃描實(shí)例 83
習(xí)題5 86
第6章 中斷 87
6.1 STM32中斷簡(jiǎn)介 87
6.2 嵌套向量中斷控制器 89
6.2.1 NVIC寄存器 89
6.2.2 系統(tǒng)控制寄存器(SCB) 89
6.2.3 中斷和異常處理 90
6.2.4 STM32中斷優(yōu)先級(jí) 91
6.3 EXTI外部中斷 92
6.3.1 EXTI硬件結(jié)構(gòu) 92
6.3.2 EXTI中斷操作 93
6.4 EXTI中斷應(yīng)用實(shí)例 94
習(xí)題6 95
第7章 串行通信 96
7.1 串行通信簡(jiǎn)介 96
7.1.1 串行通信基礎(chǔ)知識(shí) 96
7.1.2 微控制器常見串行通信方式 97
7.2 STM32 USART接口 98
7.2.1 USART硬件引腳 98
7.2.2 USART主要寄存器及中斷請(qǐng)求 99
7.2.3 UART異步通信 100
7.2.4 USART其他功能模式 101
7.3 UART異步串行操作 102
7.3.1 串行數(shù)據(jù)發(fā)送和接收 102
7.3.2 UART數(shù)據(jù)發(fā)送和接收應(yīng)用實(shí)例 104
7.3.3 RS-232接口 107
7.3.4 printf串口終端實(shí)現(xiàn) 109
7.3.5 RS-485接口 110
7.4 基于串口的無線通信 111
7.4.1 移動(dòng)通信 112
7.4.2 藍(lán)牙串口 112
7.4.3 串口無線網(wǎng)絡(luò)(WiFi) 113
7.4.4 ZigBee通信 113
7.5 SPI通信 113
7.5.1 STM32 SPI接口 113
7.5.2 SPI接口應(yīng)用實(shí)例 115
習(xí)題7 117
第8章 定時(shí)器 118
8.1 定時(shí)器概述 118
8.1.1 通用定時(shí)器 119
8.1.2 高級(jí)定時(shí)器 119
8.1.3 高級(jí)/通用定時(shí)器接口 119
8.1.4 定時(shí)器引腳和寄存器 122
8.1.5 定時(shí)器時(shí)鐘源 123
8.1.6 定時(shí)器計(jì)數(shù)模式 123
8.2 定時(shí)器操作 124
8.2.1 定時(shí)功能及實(shí)例 124
8.2.2 計(jì)數(shù)功能及實(shí)例 127
8.2.3 捕獲功能及實(shí)例 129
8.2.4 輸出PWM模式及實(shí)例 131
8.2.5 其他功能模式 134
8.3 系統(tǒng)滴答定時(shí)器(SysTick) 135
8.3.1 SysTick工作分析及配置 136
8.3.2 SysTick功能實(shí)現(xiàn) 136
8.4 看門狗定時(shí)器(WDT) 138
8.4.1 獨(dú)立看門狗 138
8.4.2 窗口看門狗 139
8.4.3 獨(dú)立看門狗與窗口看門狗的區(qū)別 141
8.5 實(shí)時(shí)時(shí)鐘(RTC) 141
習(xí)題8 145
第9章 ADC 146
9.1 ADC概述 146
9.1.1 STM32的ADC功能 146
9.1.2 STM32的ADC結(jié)構(gòu) 146
9.1.3 STM32芯片的ADC引腳 148
9.1.4 STM32的ADC工作模式 149
9.1.5 STM32的ADC主要寄存器 153
9.2 ADC應(yīng)用實(shí)例 154
9.2.1 實(shí)例主要庫(kù)函數(shù)說明 154
9.2.2 ADC查詢和中斷實(shí)例 155
習(xí)題9 157
第10章 DMA 158
10.1 DMA概述 158
10.1.1 STM32的DMA特性 158
10.1.2 STM32的DMA主要寄存器 160
10.2 DMA應(yīng)用實(shí)例 160
10.2.1 ADC數(shù)據(jù)采集DMA方式 160
10.2.2 串口發(fā)送DMA方式 161
習(xí)題10 163
第11章 其他接口 164
11.1 I2C總線 164
11.1.1 I2C總線介紹 164
11.1.2 STM32的I2C總線 165
11.1.3 I2C總線應(yīng)用實(shí)例 167
11.2 CAN總線 171
11.2.1 CAN總線介紹 171
11.2.2 STM32的CAN總線 173
11.3 USB總線 173
11.3.1 USB簡(jiǎn)介 173
11.3.2 STM32的USB接口 174
習(xí)題11 174
第12章 嵌入式操作系統(tǒng) 175
12.1 嵌入式操作系統(tǒng)概述 175
12.1.1 傳統(tǒng)小型嵌入式操作系統(tǒng) 175
12.1.2 嵌入式小型物聯(lián)網(wǎng)操作系統(tǒng) 176
12.1.3 嵌入式操作系統(tǒng)實(shí)時(shí)性特點(diǎn) 178
12.2 μC/OS-II嵌入式操作系統(tǒng) 178
12.2.1 μC/OS-II特性 179
12.2.2 μC/OS-II主要代碼說明 179
12.2.3 μC/OS-II的啟動(dòng)過程 181
12.3 μC/OS-II操作系統(tǒng)移植 181
12.3.1 移植規(guī)劃 181
12.3.2 編寫OS_CPU.H 182
12.4 μC/OS-II內(nèi)核結(jié)構(gòu) 184
12.4.1 μC/OS-II的任務(wù)狀態(tài) 184
12.4.2 任務(wù)控制塊OS_TCB 185
12.4.3 μC/OS-II的任務(wù)調(diào)度 186
12.4.4 μC/OS-II的任務(wù)切換 187
12.4.5 μC/OS-II的中斷處理 188
12.5 μC/OS-II任務(wù)、時(shí)間及事件控制塊 188
12.5.1 任務(wù)管理 188
12.5.2 時(shí)間管理 189
12.5.3 事件控制塊 191
12.6 互斥信號(hào)量(Mutex) 192
12.6.1 互斥信號(hào)量介紹 192
12.6.1 互斥信號(hào)量實(shí)例 192
12.7 信號(hào)量 194
12.7.1 概述 194
12.7.2 信號(hào)量任務(wù)同步實(shí)例 195
12.7.3 信號(hào)量資源共享實(shí)例 197
12.7.4 中斷服務(wù)程序與任務(wù)同步實(shí)例 198
12.8 事件標(biāo)志組 200
12.8.1 概述 200
12.8.2 事件標(biāo)志組操作 201
12.9 消息郵箱 202
12.9.1 概述 202
12.9.2 消息郵箱操作 203
12.10 消息隊(duì)列 205
12.10.1 概述 205
12.10.2 消息隊(duì)列操作 206
12.11 動(dòng)態(tài)內(nèi)存管理 207
12.11.1 概述 207
12.11.2 動(dòng)態(tài)內(nèi)存管理操作實(shí)例 207
習(xí)題12 208
第13章 綜合設(shè)計(jì)實(shí)例 209
13.1 嵌入式系統(tǒng)開發(fā)流程 209
13.2 嵌入式系統(tǒng)開發(fā)實(shí)例 210
13.2.1 小車系統(tǒng)及整體設(shè)計(jì) 210
13.2.2 硬件設(shè)計(jì)說明 210
13.2.3 軟件設(shè)計(jì)說明 214
習(xí)題13 219
參考文獻(xiàn) 220