本書基于GD32E2杏仁派開發(fā)板(主控芯片為GD32E230C8T6),通過14個實驗介紹GD32E230C8T6微控制器的GPIO、串口、定時器、SysTick、RCU、外部中斷、OLED顯示、DAC和ADC等的原理和應(yīng)用。作為拓展,本書配套資料包中另有6個實驗分別介紹MCU調(diào)試、RTC、FWDGT、WWDGT,以及基于I2C的EEPROM讀/寫和基于SPI的Flash讀/寫。全書程序代碼的編寫規(guī)范均遵循《C語言軟件設(shè)計規(guī)范(LY-STD001—2019)》。各實驗采用模塊化設(shè)計,以便于將各模塊應(yīng)用在實際項目和產(chǎn)品中。本書配有豐富的資料包,涵蓋GD32E2杏仁派開發(fā)板原理圖、例程、軟件包、PPT等,資料包將持續(xù)更新,下載鏈接可通過微信公眾號“卓越工程師培養(yǎng)系列”獲取。本書既可以作為高等院校電子信息、自動化等專業(yè)微控制器相關(guān)課程的教材,也可以作為微控制器系統(tǒng)設(shè)計及相關(guān)行業(yè)工程技術(shù)人員的入門培訓(xùn)用書。
鐘世達,2013年3月畢業(yè)于英國南安普頓大學(xué),電子信息專業(yè),博士學(xué)位。2013年至2016年在英國南安普敦大學(xué)進行博士后研究,2016年至2018年與南安普頓無線通信研究團隊共同創(chuàng)立英國AccelerComm公司,致力于將符合5G標準的超低延時和超高吞吐量的Polar碼算法進行芯片的IP化和商業(yè)化。2018年至今在深圳大學(xué)電子與信息工程學(xué)院工作,任助理教授,先后獲得深圳市"孔雀計劃”高層次引進人才、南山區(qū)"領(lǐng)航人才”等榮譽。鐘世達博士主要從事大規(guī)模集成電路的可測試性設(shè)計、SOC低功耗集成電路設(shè)計、5G信道編碼算法和智能多天線(MIMO)通信技術(shù)的開發(fā)及其在SDR或FPGA平臺上的實現(xiàn)、邊緣計算算法的軟硬件一體化設(shè)計。以第一作者、通信作者發(fā)表國內(nèi)外期刊、會議論文20余篇,申請發(fā)明專利10余項
第1章 GD32開發(fā)平臺和工具1
1.1 為什么選擇GD321
1.2 GD32E230xx系列芯片介紹1
1.3 GD32E2杏仁派開發(fā)板電路
簡介3
1.4 GD32E2杏仁派開發(fā)板可以開
展的部分實驗11
1.5 GD32微控制器開發(fā)工具的安
裝與配置11
1.5.1 安裝Keil 5.3011
1.5.2 設(shè)置Keil 5.3014
本章任務(wù)15
本章習(xí)題15
第2章 基準工程16
2.1 實驗內(nèi)容16
2.2 實驗原理16
2.2.1 寄存器與固件庫16
2.2.2 Keil編輯和編譯及程序下載
過程20
2.2.3 GD32工程模塊名稱及
說明21
2.2.4 相關(guān)參考資料21
2.3 實驗步驟與代碼解析22
本章任務(wù)36
本章習(xí)題36
第3章 串口電子鐘37
3.1 實驗內(nèi)容37
3.2 實驗原理37
3.2.1 RunClock模塊函數(shù)37
3.2.2 函數(shù)調(diào)用框架39
3.2.3 Proc2msTask與
Proc1SecTask40
3.2.4 程序架構(gòu)40
3.3 實驗步驟與代碼解析41
本章任務(wù)45
本章習(xí)題45
第4章 GPIO與流水燈46
4.1 實驗內(nèi)容46
4.2 實驗原理46
4.2.1 LED電路原理圖46
4.2.2 GD32E23x系列微控制器的
系統(tǒng)架構(gòu)與存儲器映射46
4.2.3 GPIO功能框圖50
4.2.4 GPIO部分寄存器52
4.2.5 GPIO部分固件庫函數(shù)58
4.2.6 RCU部分寄存器60
4.2.7 RCU部分固件庫函數(shù)61
4.2.8 程序架構(gòu)62
4.3 實驗步驟與代碼解析63
本章任務(wù)68
本章習(xí)題68
第5章 GPIO與獨立按鍵輸入69
5.1 實驗內(nèi)容69
5.2 實驗原理69
5.2.1 獨立按鍵電路原理圖69
5.2.2 GPIO功能框圖70
5.2.3 GPIO部分寄存器70
5.2.4 GPIO部分固件庫函數(shù)71
5.2.5 按鍵去抖原理71
5.2.6 程序架構(gòu)73
5.3 實驗步驟與代碼解析74
本章任務(wù)81
本章習(xí)題82
第6章 串口通信83
6.1 實驗內(nèi)容83
6.2 實驗原理83
6.2.1 串口通信協(xié)議83
6.2.2 串口電路原理圖86
6.2.3 串口功能框圖87
6.2.4 串口部分寄存器90
6.2.5 串口部分固件庫函數(shù)94
6.2.6 異常和中斷96
6.2.7 NVIC中斷控制器99
6.2.8 NVIC部分寄存器99
6.2.9 NVIC部分固件庫函數(shù)102
6.2.10 串口模塊驅(qū)動設(shè)計104
6.2.11 程序架構(gòu)109
6.3 實驗步驟與代碼解析110
本章任務(wù)119
本章習(xí)題119
第7章 定時器中斷121
7.1 實驗內(nèi)容121
7.2 實驗原理121
7.2.1 通用定時器L4結(jié)構(gòu)框圖121
7.2.2 通用定時器部分寄存器124
7.2.3 定時器部分固件庫函數(shù)126
7.2.4 RCU部分寄存器129
7.2.5 程序架構(gòu)129
7.3 實驗步驟與代碼解析131
本章任務(wù)137
本章習(xí)題137
第8章 SysTick138
8.1 實驗內(nèi)容138
8.2 實驗原理138
8.2.1 SysTick功能框圖138
8.2.2 SysTick實驗流程圖分析139
8.2.3 SysTick部分寄存器140
8.2.4 SysTick部分固件庫函數(shù)142
8.2.5 程序架構(gòu)143
8.3 實驗步驟與代碼解析144
本章任務(wù)148
本章習(xí)題148
第9章 RCU149
9.1 實驗內(nèi)容149
9.2 實驗原理149
9.2.1 RCU功能框圖149
9.2.2 RCU部分寄存器151
9.2.3 RCU部分固件庫函數(shù)156
9.2.4 FMC部分寄存器158
9.2.5 FMC部分固件庫函數(shù)159
9.2.6 程序架構(gòu)159
9.3 實驗步驟161
本章任務(wù)164
本章習(xí)題164
第10章 外部中斷165
10.1 實驗內(nèi)容165
10.2 實驗原理165
10.2.1 EXTI功能框圖165
10.2.2 EXTI部分寄存器167
10.2.3 EXTI部分固件庫函數(shù)170
10.2.4 SYSCFG部分寄存器171
10.2.5 SYSCFG部分固件庫
函數(shù)173
10.2.6 程序架構(gòu)173
10.3 實驗步驟175
本章任務(wù)179
本章習(xí)題179
第11章 OLED顯示180
11.1 實驗內(nèi)容180
11.2 實驗原理180
11.2.1 OLED顯示模塊180
11.2.2 SSD1306的顯存182
11.2.3 SSD1306常用命令182
11.2.4 字模選項183
11.2.5 ASCII碼表與取模工具184
11.2.6 GD32E230C8T6的GRAM
與SSD1306的GRAM184
11.2.7 OLED顯示模塊顯示流程185
11.2.8 程序架構(gòu)185
11.3 實驗步驟187
本章任務(wù)199
本章習(xí)題199
第12章 定時器與PWM輸出200
12.1 實驗內(nèi)容200
12.2 實驗原理200
12.2.1 PWM輸出實驗流程圖
分析200
12.2.2 通用定時器部分寄存器202
12.2.3 通用定時器部分固件庫
函數(shù)205
12.2.4 程序架構(gòu)208
12.3 實驗步驟209
本章任務(wù)214
本章習(xí)題215
第13章 定時器與輸入捕獲216
13.1 實驗內(nèi)容216
13.2 實驗原理216
13.2.1 輸入捕獲實驗流程圖
分析216
13.2.2 通用定時器部分寄存器218
13.2.3 通用定時器部分固件庫
函數(shù)221
13.2.4 程序架構(gòu)222
13.3 實驗步驟224
本章任務(wù)230
本章習(xí)題230
第14章 DAC231
14.1 實驗內(nèi)容231
14.2 實驗原理231
14.2.1 TLC5615芯片231
14.2.2 DAC實驗邏輯圖分析233
14.2.3 PCT通信協(xié)議233
14.2.4 PCT通信協(xié)議應(yīng)用239
14.2.5 程序架構(gòu)241
14.3 實驗步驟243
本章任務(wù)254
本章習(xí)題254
第15章 ADC255
15.1 實驗內(nèi)容255
15.2 實驗原理255
15.2.1 ADC功能框圖255
15.2.2 ADC時鐘及其轉(zhuǎn)換時間257
15.2.3 ADC實驗邏輯框圖分析257
15.2.4 ADC緩沖區(qū)258
15.2.5 ADC部分寄存器258
15.2.6 ADC部分固件庫函數(shù)263
15.2.7 DMA功能框圖267
15.2.8 DMA部分寄存器269
15.2.9 DMA部分固件庫函數(shù)273
15.2.10 程序架構(gòu)275
15.3 實驗步驟277
本章任務(wù)288
本章習(xí)題288
附錄A GD32E2杏仁派開發(fā)板原
理圖289
附錄B ASCII碼表290
參考文獻291