STM32單片機(jī)開發(fā)實(shí)例——基于Proteus虛擬仿真與HAL/LL庫
定 價:45 元
- 作者:徐亮
- 出版時間:2021/1/1
- ISBN:9787121404825
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP368.1
- 頁碼:224
- 紙張:
- 版次:01
- 開本:16開
這是一本介紹STM32單片機(jī)的入門書籍,單片機(jī)具體型號為STM32F103R6。全書以項(xiàng)目教學(xué)模式編寫,引導(dǎo)讀者完成項(xiàng)目的過程學(xué)習(xí)并掌握單片機(jī)相關(guān)知識。本書所述的單片機(jī)開發(fā)方式?jīng)]有采用早期的STD庫,而是采用了意法半導(dǎo)體公司目前主推的HAL/LL庫,IDE采用了意法半導(dǎo)體公司目前主推的STM32CubeIDE,并且?guī)缀跛许?xiàng)目都支持Proteus仿真。本書可作為高職高專院校電子類專業(yè)的教材,也可供STM32單片機(jī)愛好者入門學(xué)習(xí)使用。
徐亮,男,江蘇信息職業(yè)技術(shù)學(xué)院智能工程學(xué)院電子電氣專業(yè)教學(xué)骨干,院機(jī)器人社團(tuán)的負(fù)責(zé)人,2011年開始指導(dǎo)學(xué)生參加"中國機(jī)器人大賽暨RoboCup公開賽”、"中國工程機(jī)器人大賽”與"江蘇省大學(xué)生機(jī)器人大賽”多次獲獎,其中冠軍3項(xiàng)、亞軍3項(xiàng)、季軍4項(xiàng),熟悉MCS-51、STM32、恩智浦等單片機(jī);具備較強(qiáng)的項(xiàng)目研發(fā)能力,曾獨(dú)立或與學(xué)院精智模具研究院專家共同為企業(yè)提供技術(shù)研發(fā)服務(wù)。
目錄
第1篇 入門篇 1
1.1 單片機(jī)與STM32單片機(jī) 1
1.1.1 什么是單片機(jī) 2
1.1.2 單片機(jī)發(fā)展史 2
1.1.3 STM32單片機(jī)的誕生與發(fā)展 2
1.1.4 STM32單片機(jī)豐富的產(chǎn)品線 3
1.2 STM32單片機(jī)的引腳構(gòu)成 4
1.2.1 引腳結(jié)構(gòu) 4
1.2.2 單片機(jī)最小系統(tǒng) 5
1.3 STM32單片機(jī)的內(nèi)部構(gòu)造 8
1.3.1 Cortex-M3的存儲器結(jié)構(gòu) 8
1.3.2 STM32單片機(jī)的啟動(BOOT)模式 9
1.3.3 時鐘樹 9
1.4 STM32單片機(jī)的程序開發(fā)方式 10
1.4.1 STM32單片機(jī)程序開發(fā)流程概述 11
1.4.2 STM32CubeIDE簡介 11
1.4.3 硬件實(shí)物調(diào)試簡介 12
1.4.4 軟件電路仿真簡介 12
第2篇 語言篇 14
2.1 C語言入門與順序結(jié)構(gòu) 14
2.1.1 計(jì)算機(jī)語言與C語言 14
2.1.2 使用Dev-C++編寫計(jì)算機(jī)C程序 17
2.1.3 C語言的基本數(shù)據(jù)類型 18
2.1.4 格式輸入/輸出函數(shù) 20
2.1.5 C語言的運(yùn)算符(一) 23
2.1.6 任務(wù)程序的編寫 26
2.2 分支結(jié)構(gòu) 27
2.2.1 C語言的運(yùn)算符(二) 27
2.2.2 分支語句 31
2.2.3 任務(wù)程序的編寫 34
2.3 循環(huán)結(jié)構(gòu)程序 36
2.3.1 數(shù)組 36
2.3.2 循環(huán)語句 38
2.3.3 任務(wù)程序的編寫 42
2.4 模塊化程序的設(shè)計(jì) 44
2.4.1 結(jié)構(gòu)體認(rèn)知 44
2.4.2 指針認(rèn)知 45
2.4.3 函數(shù)與模塊化程序設(shè)計(jì) 47
2.4.4 任務(wù)程序的編寫 50
第3篇 基礎(chǔ)篇 52
3.1 LED單燈閃爍之軟件延時 52
3.1.1 STM32單片機(jī)的GPIO引腳及其輸出類型 53
3.1.2 使用STM32CubeIDE編寫STM32單片機(jī)C程序 55
3.1.3 使用ISP方式下載程序 59
3.1.4 任務(wù)程序的編寫 61
3.2 按鍵輸入 63
3.2.1 STM32單片機(jī)的GPIO引腳及其輸入類型 63
3.2.2 Proteus的電路仿真 64
3.2.3 任務(wù)程序的編寫 71
3.3 流水燈之軟件延時 73
3.3.1 程序算法 74
3.3.2 任務(wù)程序的編寫 75
3.4 數(shù)碼管動態(tài)顯示 79
3.4.1 數(shù)碼管的結(jié)構(gòu) 80
3.4.2 數(shù)碼管的靜態(tài)顯示與動態(tài)顯示 81
3.4.3 任務(wù)程序的編寫 83
3.5 矩陣式鍵盤 85
3.5.1 矩陣式鍵盤的電路組成 86
3.5.2 矩陣式鍵盤的行掃描法 86
3.5.3 任務(wù)程序的編寫 87
第4篇 提高篇 94
4.1 外部(EXTI)中斷 94
4.1.1 中斷技術(shù) 95
4.1.2 STM32單片機(jī)的中斷系統(tǒng)概述 95
4.1.3 STM32單片機(jī)的外部中斷(EXTI) 97
4.1.4 任務(wù)程序的編寫 98
4.2 LED單燈閃爍之定時器延時(阻塞方式) 103
4.2.1 STM32單片機(jī)的定時器 104
4.2.2 任務(wù)程序的編寫 106
4.3 流水燈之定時器延時(中斷方式) 109
4.3.1 定時器中斷 110
4.3.2 任務(wù)程序的編寫 110
4.4 長短按鍵 113
4.4.1 長短按鍵的用途和設(shè)計(jì)思路 114
4.4.2 任務(wù)程序的編寫 114
4.5 呼吸燈 118
4.5.1 STM32單片機(jī)的PWM技術(shù) 119
4.5.2 任務(wù)程序的編寫 119
4.6 串口通信之單字節(jié)通信 123
4.6.1 串口通信 124
4.6.2 單片機(jī)與計(jì)算機(jī)的串口通信 126
4.6.3 任務(wù)程序的編寫 127
4.7 串口通信之總線通信* 131
4.7.1 CRC 131
4.7.2 Modbus_RTU協(xié)議概述 132
4.7.3 任務(wù)程序的編寫 133
4.8 熱敏電阻+ADC的溫度采集 137
4.8.1 熱敏電阻 138
4.8.2 ADC 139
4.8.3 任務(wù)程序的編寫 140
4.9 Flash ROM的讀寫 146
4.9.1 Flash ROM 147
4.9.2 任務(wù)程序的編寫 149
4.10 RTC的時鐘設(shè)計(jì) 153
4.10.1 STM32單片機(jī)的RTC 154
4.10.2 任務(wù)程序的編寫 154
第5篇 拓展篇 161
5.1 LCD1602的使用 161
5.1.1 液晶顯示屏與LCD1602 162
5.1.2 任務(wù)程序的編寫 164
5.2 串行E2PROM AT24C02的使用 169
5.2.1 I2C總線簡介 170
5.2.2 AT24C02簡介 172
5.2.3 任務(wù)程序的編寫 174
5.3 串行溫度傳感器TC72的使用 180
5.3.1 SPI總線簡介 181
5.3.2 TC72簡介 183
5.3.3 任務(wù)程序的編寫 184
5.4 串行DAC芯片MCP4921的使用 189
5.4.1 MCP4921簡介 190
5.4.2 任務(wù)程序的編制 192
5.5 直流電動機(jī)的控制 196
5.5.1 直流電動機(jī)與H橋電路 197
5.5.2 雙H橋芯片L298 197
5.5.3 任務(wù)程序的編寫 199
5.6 步進(jìn)電動機(jī)的控制 203
5.6.1 達(dá)林頓晶體管陣列ULN2803 204
5.6.2 步進(jìn)電動機(jī)的驅(qū)動 205
5.6.3 任務(wù)程序的編寫 206
附錄 211
參考文獻(xiàn)