STC 32位 8051單片機原理與應(yīng)用
定 價:79 元
- 作者:丁向榮
- 出版時間:2023/5/1
- ISBN:9787121455131
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP368.1
- 頁碼:344
- 紙張:
- 版次:01
- 開本:16開
本書以STC 32位單片機產(chǎn)品系列中的STC32G12K128單片機為載體進(jìn)行編寫,其是以抗干擾能力強、價格低、工作速度快、功耗低為目標(biāo)的32位8051單片機,在相同的工作頻率下,其工作速度可達(dá)傳統(tǒng)8051單片機的70倍。 本書基于STC大學(xué)推廣計劃實驗箱(9.4)(主控單片機:STC32G12K128)介紹應(yīng)用實例的開發(fā),采用基于寄存器應(yīng)用編程與基于庫函數(shù)應(yīng)用編程相結(jié)合、理論與實踐相結(jié)合、側(cè)重工程實踐的編寫思路,內(nèi)容主要包括微型計算機基礎(chǔ)、STC32G12K128單片機應(yīng)用系統(tǒng)的開發(fā)工具、STC32G12K128單片機的內(nèi)核、定時/計數(shù)器、中斷系統(tǒng)、串行端口、A/D轉(zhuǎn)換模塊、比較器、人機對話端口的應(yīng)用設(shè)計、STC32G-SOFT WARE-LIB函數(shù)庫、SPI端口及其應(yīng)用、I2C總線端口及其應(yīng)用、高級PWM定時器及其應(yīng)用、RTC時鐘及其應(yīng)用、DMA通道及其應(yīng)用、CAN總線及其應(yīng)用、LIN總線及其應(yīng)用、USB模塊及其應(yīng)用、32位乘除單元等。
丁向榮,男,廣東輕工職業(yè)技術(shù)學(xué)院教授,電子信息類專業(yè)教學(xué)骨干,長期從事單片機方面的教學(xué)實踐和教科研工作,具備豐富的相關(guān)經(jīng)驗,其對STC單片機的理解尤為深入,曾編寫并出版過多本相關(guān)教材,獲得市場廣泛認(rèn)可。
目 錄
第1章 微型計算機基礎(chǔ) 1
1.1 數(shù)制與編碼 1
1.1.1 數(shù)制及其轉(zhuǎn)換方法 1
1.1.2 微型計算機中數(shù)的表示方法 3
1.1.3 微型計算機中常用編碼 5
1.2 微型計算機原理 6
1.2.1 微型計算機的基本組成 6
1.2.2 指令、程序與編程語言 7
1.2.3 微型計算機的工作過程 8
1.2.4 微型計算機的應(yīng)用形態(tài) 9
1.3 STC 32位單片機 9
1.3.1 STC 32位單片機產(chǎn)品系列 10
1.3.2 STC 32位單片機的內(nèi)核 10
本章小結(jié) 10
思考與提高 11
第2章 STC32G12K128單片機應(yīng)用系統(tǒng)的開發(fā)工具 12
2.1 Keil C251集成開發(fā)環(huán)境 12
2.2 STC32G12K128單片機硬件實驗平臺 20
2.2.1 STC大學(xué)推廣計劃實驗箱(9.4) 20
2.2.2 STC32G12K128單片機迷你核心學(xué)習(xí)板 28
2.3 在線編程與在線仿真 29
2.3.1 在線可編程(ISP)電路 29
2.3.2 應(yīng)用程序的下載與運行 30
2.3.3 STC-ISP的其他功能 31
2.4 工程訓(xùn)練 31
2.4.1 Keil C251集成開發(fā)環(huán)境的應(yīng)用 31
2.4.2 STC32G12K128單片機的在線編程與在線調(diào)試 33
2.4.3 STC32G12K128單片機的不停電程序下載 34
2.4.4 STC32G12K128單片機SWD端口的在線仿真 36
本章小結(jié) 38
思考與提高 38
第3章 STC32G12K128單片機的內(nèi)核 40
3.1 資源配置與引腳 40
3.1.1 資源配置 40
3.1.2 工作特性 42
3.1.3 引腳與引腳功能 42
3.2 時鐘 48
3.2.1 時鐘框圖 48
3.2.2 系統(tǒng)時鐘的控制與管理 49
3.2.3 USB時鐘 52
3.2.4 高速外設(shè)時鐘 52
3.2.5 RTC時鐘源 52
3.3 復(fù)位 53
3.3.1 硬件復(fù)位 53
3.3.2 軟件復(fù)位 55
3.4 存儲系統(tǒng) 55
3.4.1 程序存儲器 57
3.4.2 數(shù)據(jù)存儲器 57
3.4.3 特殊功能寄存器 58
3.4.4 EEPROM 60
3.5 并行I/O端口 62
3.5.1 I/O端口的配置 64
3.5.2 并行I/O端口的結(jié)構(gòu) 64
3.5.3 并行I/O端口的其他控制 66
3.5.4 并行I/O端口使用注意事項 66
3.6 電源管理 67
3.6.1 空閑(IDLE)模式 67
3.6.2 掉電模式 67
3.7 工程訓(xùn)練 69
3.7.1 EEPROM的測試 69
3.7.2 LED數(shù)碼管驅(qū)動與顯示 72
本章小結(jié) 74
思考與提高 75
第4章 定時/計數(shù)器 77
4.1 定時/計數(shù)器T0、T1的控制 77
4.1.1 定時/計數(shù)器T0 78
4.1.2 定時/計數(shù)器T1 79
4.2 定時/計數(shù)器T0、T1的應(yīng)用 81
4.2.1 T0、T1的定時應(yīng)用 81
4.2.2 T0、T1的計數(shù)應(yīng)用 83
4.2.3 T0、T1可編程時鐘的輸出 84
4.3 定時/計數(shù)器T2、T3、T4 85
4.3.1 定時/計數(shù)器T2 85
4.3.2 定時/計數(shù)器T3、T4 86
4.4 工程訓(xùn)練 87
4.4.1 定時/計數(shù)器的定時應(yīng)用 87
4.4.2 定時/計數(shù)器的計數(shù)應(yīng)用 89
4.4.3 定時/計數(shù)器的綜合應(yīng)用 91
4.4.4 可編程時鐘輸出 92
本章小結(jié) 94
思考與提高 94
第5章 中斷系統(tǒng) 97
5.1 中斷系統(tǒng)概述 97
5.1.1 中斷系統(tǒng)的幾個概念 97
5.1.2 中斷的技術(shù)優(yōu)勢 98
5.1.3 中斷系統(tǒng)需要解決的問題 98
5.2 STC32G12K128單片機的中斷系統(tǒng) 98
5.2.1 中斷請求 98
5.2.2 中斷響應(yīng) 105
5.2.3 中斷服務(wù)與中斷返回 106
5.2.4 關(guān)于中斷號大于31在Keil C251中編譯出錯的處理 107
5.2.5 中斷應(yīng)用舉例 108
5.3 外部中斷的擴展 109
5.4 工程訓(xùn)練 110
5.4.1 中斷應(yīng)用編程 110
5.4.2 外部中斷的應(yīng)用編程 111
本章小結(jié) 113
思考與提高 114
第6章 串行端口 117
6.1 串行通信基礎(chǔ) 117
6.2 串行端口1 119
6.2.1 串行端口1的控制寄存器 120
6.2.2 串行端口1的工作方式與應(yīng)用 122
6.2.3 STC-ISP波特率計算器 125
6.2.4 串行端口1的應(yīng)用舉例 125
6.3 STC32G12K128單片機與PC的通信 132
6.3.1 串行通信的端口設(shè)計 132
6.3.2 串行通信的程序設(shè)計 134
6.4 串行端口2* 135
6.5 串行端口3、串行端口4* 138
6.5.1 串行端口3 138
6.5.2 串行端口4 139
6.6 工程訓(xùn)練 140
6.6.1 STC32G12K128單片機間的雙機通信 140
6.6.2 STC32G12K128單片機與PC間的串行通信 143
本章小結(jié) 145
思考與提高 145
第7章 A/D轉(zhuǎn)換模塊 148
7.1 A/D轉(zhuǎn)換模塊的結(jié)構(gòu) 148
7.2 A/D轉(zhuǎn)換模塊的控制 149
7.3 A/D轉(zhuǎn)換的應(yīng)用 152
7.4 工程訓(xùn)練 154
7.4.1 測量內(nèi)部1.19V基準(zhǔn)電壓 154
7.4.2 構(gòu)建ADC鍵盤 155
本章小結(jié) 159
思考與提高 159
第8章 比較器 161
8.1 比較器的內(nèi)部結(jié)構(gòu)與控制 161
8.1.1 比較器的內(nèi)部結(jié)構(gòu) 161
8.1.2 比較器的控制 161
8.2 比較器的應(yīng)用 163
8.3 工程訓(xùn)練:應(yīng)用比較器和A/D轉(zhuǎn)換模塊測量內(nèi)部1.19V基準(zhǔn)電壓 164
本章小結(jié) 167
思考與提高 167
第9章 人機對話端口的應(yīng)用設(shè)計 169
9.1 單片機應(yīng)用系統(tǒng)的開發(fā)流程 169
9.1.1 單片機應(yīng)用系統(tǒng)的設(shè)計原則 169
9.1.2 單片機應(yīng)用系統(tǒng)的開發(fā)流程 170
9.1.3 單片機應(yīng)用系統(tǒng)工程報告的編制 172
9.2 鍵盤端口與應(yīng)用編程 174
9.3 LCD模塊的顯示端口與應(yīng)用編程 181
9.3.1 LCD模塊概述 181
9.3.2 點陣字符型液晶顯示模塊LCD1602 181
9.3.3 點陣圖形型液晶顯示模塊LCD12864 188
9.4 工程實踐 196
9.4.1 STC32G12K128單片機與矩陣鍵盤的端口與應(yīng)用 196
9.4.2 STC32G12K128單片機與LCD12864(含中文字庫)的端口與應(yīng)用 198
本章小結(jié) 203
思考與提高 204
第10章 STC32G-SOFTWARE-LIB函數(shù)庫 207
10.1 目錄結(jié)構(gòu) 207
10.1.1 硬件驅(qū)動程序部分 207
10.1.2 應(yīng)用程序部分 208
10.1.3 用戶程序及配置文件 208
10.2 硬件驅(qū)動 209
10.2.1 A/D轉(zhuǎn)換模塊 209
10.2.2 比較器模塊 210
10.2.3 EEPROM 211
10.2.4 外部中斷 212
10.2.5 GPIO 212
10.2.6 I2C總線 213
10.2.7 定時/計數(shù)器 214
10.2.8 串行端口 215
10.2.9 SPI總線 217
10.2.10 軟件模擬I2C總線 218
10.2.11 看門狗 219
10.2.12 16位高級PWM 220
10.2.13 DMA通道 222
10.2.14 LCM模塊 226
10.2.15 軟件延時 227
10.2.16 中斷服務(wù)函數(shù) 227
10.3 應(yīng)用程序開發(fā) 242
10.3.1 系統(tǒng)流程 242
10.3.2 應(yīng)用程序框架分析 242
10.3.3 應(yīng)用程序的分析與編寫 251
10.3.4 開發(fā)步驟 256
10.4 工程訓(xùn)練:通過A/D轉(zhuǎn)換模塊測量內(nèi)部1.19V基準(zhǔn)電壓 256
思考與提高 257
第11章 SPI接口及其應(yīng)用 258
11.1 SPI接口的功能特性 258
11.2 與SPI接口相關(guān)的特殊功能寄存器 261
11.3 SPI接口的應(yīng)用舉例 261
11.4 工程訓(xùn)練:雙機之間的串行數(shù)據(jù)通信 263
思考與提高 264
第12章 I2C總線及其應(yīng)用 265
12.1 I2C總線概述 265
12.2 STC32G12K128單片機的I2C總線 268
12.3 I2C總線的應(yīng)用 269
12.4 工程訓(xùn)練:I2C總線的自發(fā)自收 270
思考與提高 271
第13章 高級PWM定時器及其應(yīng)用 273
13.1 PWMA的功能特性 273
13.2 PWMA的應(yīng)用 275
13.3 工程訓(xùn)練:設(shè)計呼吸燈 277
思考與提高 278
第14章 RTC時鐘及其應(yīng)用 279
14.1 RTC時鐘的功能特性 279
14.2 RTC時鐘的應(yīng)用 280
14.3 工程訓(xùn)練:設(shè)計24小時時鐘 284
思考與提高 285
第15章 DMA通道及其應(yīng)用 286
15.1 DMA通道的功能特性 286
15.2 DMA通道的應(yīng)用 295
15.3 工程訓(xùn)練:TFT彩屏的驅(qū)動與顯示 303
思考與提高 304
第16章 CAN總線及其應(yīng)用 305
16.1 CAN總線的功能特性 305
16.2 CAN總線的應(yīng)用 305
16.3 工程訓(xùn)練:CAN總線的自發(fā)自收 308
思考與提高 310
第17章 LIN總線及其應(yīng)用 311
17.1 LIN總線的功能特性 311
17.2 LIN總線的應(yīng)用 311
17.3 工程訓(xùn)練:LIN總線主機模式、從機模式的測試 314
思考與提高 315
第18章 USB模塊及其應(yīng)用 316
18.1 概述 316
18.2 USB庫函數(shù)(調(diào)試端口) 316
18.2.1 LED數(shù)碼管端口 316
18.2.2 LCD12864端口 317
18.2.3 OLED12864端口 319
18.2.4 在虛擬鍵盤上按鍵然后發(fā)送相應(yīng)的鍵值到設(shè)備 321
18.2.5 控制DIP40的各個引腳連接的LED的狀態(tài) 322
18.3 工程訓(xùn)練 322
18.3.1 測試HID調(diào)試端口(虛擬鍵盤、數(shù)碼管、LCD12864) 322
18.3.2 設(shè)計秒表(HID數(shù)碼管顯示) 326
思考與提高 328
第19章 32位硬件乘除單元 329
19.1 MDU32簡介 329
19.2 基于MDU32庫文件的應(yīng)用編程 329
19.3 工程訓(xùn)練—MDU32的應(yīng)用 330
思考與提高 331
參考文獻(xiàn) 332