第1章嵌入式系統(tǒng)概述1
1.1嵌入式系統(tǒng)簡介 1
1.2嵌入式系統(tǒng)微處理器4
1.3ARM系列嵌入式微處理器7
1.4嵌入式操作系統(tǒng)10
1.5本章小結14
第2章STM32F10x微處理器的組成及編程模式152.1為什么選擇STM32F10x微處理器15
2.2STM32F10x開發(fā)工具介紹16
2.3MDK在STM32F10x處理器上的使用18
2.3.1MDK的安裝18
2.3.2實例:工程的建立和配置22
2.3.3使用MDK進行STM32的程序開發(fā)24
第3章ARM CortexM3基礎知識30
3.1ARM
CortexM3寄存器組30
3.2ARM
CortexM3指令集35
3.3ARM
CortexM3的存儲器系統(tǒng)52
3.4ARM
CortexM3使用異常系統(tǒng)62
3.5ARM
CortexM3調(diào)試系統(tǒng)70
第4章ARM7應用程序移植到CortexM3處理器80
4.1應用簡介80
4.2系統(tǒng)性質(zhì)80
4.3匯編源程序82
4.4C源程序84
第5章STM32F10x的開發(fā)86
5.1選擇一款CortexM3產(chǎn)品86
5.2CortexM3版本0與版本1的區(qū)別86
5.3開發(fā)工具88
5.4庫函數(shù)89
5.5STM32固件庫簡介90
5.6紅龍開發(fā)板簡介90
5.7開發(fā)板接口簡介92
第6章通用I/O(GPIO)94
6.1概述94
6.2可選擇的端口功能94
6.3相關寄存器96
6.4典型硬件電路設計97
6.5例程源代碼分析98
第7章EXTI中斷系統(tǒng)理論與實戰(zhàn)1107.1STM32中斷系統(tǒng)的簡介110
7.2嵌套向量中斷控制器114
7.3外部中斷/事件控制器116
7.4EXTI寄存器描述117
7.5典型硬件電路設計120
7.6例程源代碼分析121
第8章RTC實時時鐘理論與實戰(zhàn)1338.1RTC實時時鐘的功能133
8.2RTC相關寄存器介紹134
8.3典型硬件電路設計138
8.4例程源代碼分析138
第9章通用定時器148
9.1概述148
9.2時基單元介紹150
9.3相關寄存器介紹151
9.4典型硬件電路設計152
9.5例程源代碼分析152
第10章定時器外部脈沖計數(shù)16210.1TIMx外部脈沖計數(shù)功能簡介162
10.2典型硬件電路設計163
10.3例程源碼分析164
第11章PWM理論與實戰(zhàn)17011.1概述170
11.2PWM輸出的工作原理170
11.3PWM輸出信號的頻率和占空比172
11.4相關寄存器173
11.5典型硬件電路設計174
11.6例程源代碼分析175
第12章通用同步/異步收發(fā)器(USART)18312.1概述183
12.2USART操作186
12.3USART特殊功能寄存器186
12.4典型硬件電路設計187
12.5例程源代碼分析188
第13章RS485通信196
13.1概述196
13.2SP3485芯片簡介197
13.3典型硬件電路設計198
13.4例程源碼分析199
第14章DMA實驗204
14.1概述204
14.2DMA的工作原理及結構205
14.3相關寄存器簡介208
14.4典型硬件電路設計209
14.5例程源碼分析209
第15章窗口看門狗219
15.1概述219
15.2窗口看門狗的工作原理220
15.3相關寄存器介紹221
15.4典型硬件電路設計223
15.5例程源碼分析223
第16章ADC轉換231
16.1ADC轉換原理231
16.2ADC控制寄存器介紹238
16.3典型硬件電路設計240
16.4例程源代碼分析240
第17章DAC實驗251
17.1概述251
17.2STM32
DAC的功能252
17.3相關寄存器簡介255
17.4典型硬件電路設計255
17.5例程源碼分析256
第18章I2C總線設備264
18.1概述264
18.2I2C總線工作原理266
18.3相關寄存器269
18.4典型硬件電路設計271
18.5例程源代碼分析271
第19章CAN總線291
19.1概述291
19.2STM32
CAN總線的特點294
19.3STM32
bxCAN的功能295
19.4相關寄存器簡介298
19.5典型硬件電路設計298
19.6例程源碼分析299
第20章STM32的系統(tǒng)時鐘317
20.1STM32的時鐘樹317
20.2系統(tǒng)時鐘318
20.3相關寄存器319
20.4典型硬件電路設計320
20.5例程源碼分析320
第21章FSMC控制器32421.1概述324
21.2FSMC功能描述324
21.3FSMC外部設備地址映像326
21.4FSMC擴展SRAM時序的分析328
21.5典型硬件電路設計329
21.6例程源碼分析330
第22章NOR Flash實驗337
22.1概述337
22.2FSMC
NOR Flash的配置說明337
22.3典型硬件電路設計338
22.4例程源碼分析339
第23章NAND Flash實驗352
23.1概述352
23.2NAND
Flash的存儲結構353
23.3典型硬件電路設計353
23.4例程源碼分析355
第24章TFT彩屏FSMC驅動36724.1概述367
24.2TFT彩屏工作原理367
24.3TFT的FSMC接口370
24.4典型硬件電路設計372
24.5例程源碼分析372
第25章SDIO介紹374
25.1概述374
25.2SDIO功能介紹374
25.3典型硬件電路設計376
25.4例程源碼分析377
第26章SD卡的讀取383
26.1概述383
26.2SD卡的結構384
26.3典型硬件電路設計385
26.4例程源碼分析385
第27章SPI通信及FAT32文件讀/寫39027.1概述390
27.2SPI工作原理391
27.3FAT32簡介393
27.4典型硬件電路設計393
27.5例程源碼分析394
第28章USB轉串口實驗396
28.1概述396
28.2PL2303的簡介396
28.3典型硬件電路設計397
28.4例程源碼分析399
第29章USB通信403
29.1USB通信原理403
29.2STM32的USB電路設計405
29.3例程源代碼分析406
第30章PS2接口414
30.1概述414
30.2PS2協(xié)議414
30.3典型硬件電路設計416
30.4例程源碼分析416
第31章NRF24L01無線通信423
31.1概述423
31.2NRF24L01模塊的結構特性423
31.3典型硬件電路設計424
31.4例程源碼分析424
第32章紅外遙控實驗427
32.1紅外遙控簡介427
32.2紅外遙控的工作原理427
32.3典型硬件電路設計429
32.4例程源碼分析430
參考文獻437