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