基於STM32的嵌入式系統套用

基於STM32的嵌入式系統套用

《基於STM32的嵌入式系統套用》是2020年1月人民郵電出版社出版的圖書,作者是孫光。

基本介紹

  • 書名:基於STM32的嵌入式系統套用
  • 作者:孫光
  • 出版社:人民郵電出版社
  • 出版時間:2020年1月
  • 頁數:190 頁
  • 定價:42 元
  • 開本:16 開
  • 裝幀:平裝
  • ISBN:9787115517999
內容簡介,圖書目錄,

內容簡介

本書介紹了意法半導體公司出品的基於Arm Cortex-M3核心的STM32F103微控制器在工程實踐中的套用。
全書分為基礎篇和套用篇。基礎篇介紹了嵌入式系統的基本概念、實訓使用的軟硬體平台、STM32的標準外設庫、嵌入式C語言編程的特點、STM32系統時鐘、彩色LCD顯示基礎、字元編碼和顯示字型檔等內容;套用篇依託STM32微控制器的主要外設、常用外圍器件以及典型套用等設計了11個實訓項目。
本書適合作為高職院校電子與控制類專業“嵌入式系統套用”等相關課程的教材,也可以作為工程技術人員學習STM32微控制器編程的快速入門參考書。

圖書目錄

基礎篇
第 1章 專題1——嵌入式系統概述 2
1.1 滲燥備從單片機到嵌入式系統 2
1.2 精簡指令集計算機與複雜指令集計算機 3
1.3 普林斯頓結構和哈佛結構 3
1.4 Arm公司及其微處理器 4
1.5 Arm Cortex系列處理器 5
1.6 STM32F103系列微控制器 8
第 2章 專題2——實訓項目使用的軟硬體平台 11
2.1 實訓項目使用的軟體集成開發環境 11
2.2 實訓項目使用的仿真器 13
2.2.1 仿真器分類 13
2.2.2 JTAG和SWD接口 13
2.3 實訓項目使用的目標板 15
2.4 實訓項目使用的帆板角度測量與控制裝置 15
第3章 專題3——CMSIS與STM32標準外設庫 17
3.1 Arm Cortex微控制器軟體接口標準CMSIS 17
3.2 關於STM32的標準外設庫 18
3.3 STM32標準外設庫的命名規則 23
第4章 專題4——STM32嵌入式C語言編程的特點 26
4.1 宏指令的使用及其意義 坑阿背26
4.2 STM32嵌入式C語言編程中幾個重要關淚堡鍵字 28
4.3 STM32嵌入式C語言編程的基本數據類型 30
4.4 結構體與指針 32
4.5 枚舉 33
4.6 C語言編程的代碼格式 34
第5章 專題5——STM32F10x微控制器的系統時鐘 36
5.1 STM32F10x微控制器系統時鐘的基本結構 36
5.2 STM32F10x微控制器的時鐘源與配置路徑 37
5.3 STM32F10x微控制器的匯流排時鐘 40
5.4 STM32F10x微控制器系統時鐘與外設時鐘的配置方法 40
5.4.1 STM32F10x微控制器系統時鐘的配置函式 40
5.4.2 STM32F10x微控制器外設時鐘的控制 41
第6章 專題6——彩色LCD顯示 42
6.1 彩色LCD顯示與控制的基本原理 42
6.2 彩色LCD顯示器的圖形顯示方法 43
6.3 彩色圖片轉換成C語言數組檔案的方法 44
第7章 專題7——字元編碼與顯示字型檔 46
7.1 ASCII編碼 46
7.2 漢字字元編碼 婆旋院催51
7.3 字元在彩色LCD螢幕上的顯示 52
7.4 顯示字型檔與字元編碼的關係 54
套用篇
第8章 實訓項目1——循檔達LED閃爍 58
8.1 相關知識 58
8.2 項目實施 59
8.2.1 在MDK開發環境中新建項目 59
8.2.2 MDK工程項目配置 62
8.2.3 編譯並下載運行 66
第9章 實訓項目2——按鍵控制LED亮滅 67
9.1 相關知識 67
9.1.1 STM32F103微控制器通用輸入/輸出連線埠GPIO的基本結構 67
9.1.2 GPIO的工作模式 68
9.1.3 GPIO連線埠編程涉及的標準外設庫函式 69
9.2 項目實施 70
9.2.1 硬體電路實現 70
9.2.2 程式設計思路 70
9.2.3 程式代碼分辨斷連元析 71
9.3 拓展項目——按鍵控制LED閃爍頻率 75
9.3.1 項目內容 75
9.3.2 項目提示 75
第 10章 實訓項目3——按鍵控制LED閃爍頻率(外部中斷) 76
10.1 相關知識 76
10.1.1 STM32F103微控制器的中斷系統 76
10.1.2 STM32F103微控制器的外部中斷 80
10.1.3 外部中斷編程涉及的標準外設庫函式 81
10.2 項目實施 81
10.2.1 硬體電路設計 81
10.2.2 程式設計思路 82
10.2.3 程式代碼分析 82
10.3 拓展項目——LED顯示與按鍵動作的同步 88
10.3.1 項目內容 88
10.3.2 項目提示 88
第 11章 實訓項目4——彩色LCD顯示圖片與文字 89
11.1 相關知識 89
11.1.1 STM32F103微控制器的FSMC 89
11.1.2 拘講墓FSMC編程涉及的標準外設庫函式 92
11.1.3 彩色LCD的驅動 92
11.2 項目實施 93
11.2.1 硬體電路設計 93
11.2.2 程式代碼分析 93
11.3 拓展項目——按鍵控制字元串移動 98
11.3.1 項目內容 98
11.3.2 項目提示 98
第 12章 實訓項目5——按鍵控制LED閃爍頻率(定時器中斷) 99
12.1 相關知識 99
12.1.1 STM32F103微控制器的定時器資源 99
12.1.2 STM32F103微控制器的通用定時器 100
12.1.3 通用定時器編程涉及的STM32標準外設庫函式 101
12.2 項目實施 101
12.2.1 硬體電路實現 101
12.2.2 程式設計思路 101
12.2.3 程式代碼分析 102
12.3 拓展項目——LED1呼吸燈(定時器中斷) 107
12.3.1 項目內容 107
12.3.2 項目提示 107
第 13章 實訓項目6——風扇轉速的PWM控制 108
13.1 相關知識 108
13.1.1 脈衝寬度調製的基本原理 108
13.1.2 四線制直流風扇的控制方法 108
13.1.3 STM32通用定時器的PWM 109
13.1.4 STM32引腳的重映射 110
13.1.5 通用定時器PWM輸出編程涉及的標準外設庫函式 110
13.2 項目實施 110
13.2.1 硬體電路設計 110
13.2.2 程式設計思路 111
13.2.3 程式代碼分析 111
第 14章 實訓項目7——帆板角度與晶片溫度檢測 116
14.1 相關知識 116
14.1.1 電阻式角度感測器的原理 116
14.1.2 模擬/數字轉換的過程 116
14.1.3 模擬數字轉換的技術指標 118
14.1.4 逐次逼近型A/D轉換器 118
14.1.5 STM32微控制器的模擬數字轉換器ADC 120
14.1.6 ADC編程涉及的標準外設庫函式 121
14.2 項目實施 122
14.2.1 硬體電路設計 122
14.2.2 程式設計思路 122
14.2.3 程式代碼分析 123
14.3 拓展項目——利用規則通道檢測晶片溫度與內部參考電壓 129
14.3.1 項目要求 129
14.3.2 項目提示 129
第 15章 實訓項目8——帆板角度與晶片溫度檢測(DMA方式) 130
15.1 相關知識 130
15.1.1 DMA的基本概念 130
15.1.2 STM32F103ZE微控制器的DMA 131
15.1.3 DMA編程涉及的標準外設庫函式 134
15.2 項目實施 135
15.2.1 硬體電路設計 135
15.2.2 程式設計思路 135
15.2.3 程式代碼分析 135
15.3 拓展項目——存儲器到存儲器(M2M)數據傳輸 140
15.3.1 項目內容 140
15.3.2 項目提示 140
第 16章 實訓項目9——串列通信控制風扇轉速並獲取帆板角度 142
16.1 相關知識 142
16.1.1 異步串列通信 142
16.1.2 STM32的通用同步/異步收發器(USART) 143
16.1.3 STM32的USART編程涉及的標準
外設庫函式 144
16.2 項目實施 144
16.2.1 硬體電路設計 144
16.2.2 程式設計思路 145
16.2.3 串列通信協定 145
16.2.4 程式代碼分析 146
16.2.5 使用串口調試助手進行操作 151
16.3 拓展項目——串口採用DMA方式傳送字元 152
16.3.1 項目要求 152
16.3.2 項目提示 152
第 17章 實訓項目10——Wi-Fi控制風扇轉速並獲取帆板角度 154
17.1 相關知識 154
17.1.2 TCP/IP相關知識點 155
17.1.3 Wi-Fi及其三種工作模式 156
17.1.4 Wi-Fi模組ESP8266 156
17.1.5 ESP8266模組的控制指令 157
17.2 項目實施 158
17.2.1 硬體電路設計 158
17.2.2 程式設計思路 159
17.2.3 程式代碼分析 159
17.2.4 使用手機端“網路調試助手”App進行遙控操作 167
第 18章 實訓項目11——基於STM32的物聯網雲平台溫度檢測 169
18.1 相關知識 169
18.1.1 雲服務及其分類 169
18.1.2 物聯網雲平台 171
18.1.3 中國移動物聯網雲平台OneNET 171
18.1.4 數據傳輸過程 172
18.1.5 本項目使用的ESP8266模組控制指令 174
18.2 項目實施 175
18.2.1 在OneNET雲平台上搭建設備和套用 175
18.2.2 程式設計思路 184
18.2.3 程式代碼分析 184
18.2.4 在桌面端或手機端觀察雲平台的溫度數據 189
6.2 彩色LCD顯示器的圖形顯示方法 43
6.3 彩色圖片轉換成C語言數組檔案的方法 44
第7章 專題7——字元編碼與顯示字型檔 46
7.1 ASCII編碼 46
7.2 漢字字元編碼 51
7.3 字元在彩色LCD螢幕上的顯示 52
7.4 顯示字型檔與字元編碼的關係 54
套用篇
第8章 實訓項目1——LED閃爍 58
8.1 相關知識 58
8.2 項目實施 59
8.2.1 在MDK開發環境中新建項目 59
8.2.2 MDK工程項目配置 62
8.2.3 編譯並下載運行 66
第9章 實訓項目2——按鍵控制LED亮滅 67
9.1 相關知識 67
9.1.1 STM32F103微控制器通用輸入/輸出連線埠GPIO的基本結構 67
9.1.2 GPIO的工作模式 68
9.1.3 GPIO連線埠編程涉及的標準外設庫函式 69
9.2 項目實施 70
9.2.1 硬體電路實現 70
9.2.2 程式設計思路 70
9.2.3 程式代碼分析 71
9.3 拓展項目——按鍵控制LED閃爍頻率 75
9.3.1 項目內容 75
9.3.2 項目提示 75
第 10章 實訓項目3——按鍵控制LED閃爍頻率(外部中斷) 76
10.1 相關知識 76
10.1.1 STM32F103微控制器的中斷系統 76
10.1.2 STM32F103微控制器的外部中斷 80
10.1.3 外部中斷編程涉及的標準外設庫函式 81
10.2 項目實施 81
10.2.1 硬體電路設計 81
10.2.2 程式設計思路 82
10.2.3 程式代碼分析 82
10.3 拓展項目——LED顯示與按鍵動作的同步 88
10.3.1 項目內容 88
10.3.2 項目提示 88
第 11章 實訓項目4——彩色LCD顯示圖片與文字 89
11.1 相關知識 89
11.1.1 STM32F103微控制器的FSMC 89
11.1.2 FSMC編程涉及的標準外設庫函式 92
11.1.3 彩色LCD的驅動 92
11.2 項目實施 93
11.2.1 硬體電路設計 93
11.2.2 程式代碼分析 93
11.3 拓展項目——按鍵控制字元串移動 98
11.3.1 項目內容 98
11.3.2 項目提示 98
第 12章 實訓項目5——按鍵控制LED閃爍頻率(定時器中斷) 99
12.1 相關知識 99
12.1.1 STM32F103微控制器的定時器資源 99
12.1.2 STM32F103微控制器的通用定時器 100
12.1.3 通用定時器編程涉及的STM32標準外設庫函式 101
12.2 項目實施 101
12.2.1 硬體電路實現 101
12.2.2 程式設計思路 101
12.2.3 程式代碼分析 102
12.3 拓展項目——LED1呼吸燈(定時器中斷) 107
12.3.1 項目內容 107
12.3.2 項目提示 107
第 13章 實訓項目6——風扇轉速的PWM控制 108
13.1 相關知識 108
13.1.1 脈衝寬度調製的基本原理 108
13.1.2 四線制直流風扇的控制方法 108
13.1.3 STM32通用定時器的PWM 109
13.1.4 STM32引腳的重映射 110
13.1.5 通用定時器PWM輸出編程涉及的標準外設庫函式 110
13.2 項目實施 110
13.2.1 硬體電路設計 110
13.2.2 程式設計思路 111
13.2.3 程式代碼分析 111
第 14章 實訓項目7——帆板角度與晶片溫度檢測 116
14.1 相關知識 116
14.1.1 電阻式角度感測器的原理 116
14.1.2 模擬/數字轉換的過程 116
14.1.3 模擬數字轉換的技術指標 118
14.1.4 逐次逼近型A/D轉換器 118
14.1.5 STM32微控制器的模擬數字轉換器ADC 120
14.1.6 ADC編程涉及的標準外設庫函式 121
14.2 項目實施 122
14.2.1 硬體電路設計 122
14.2.2 程式設計思路 122
14.2.3 程式代碼分析 123
14.3 拓展項目——利用規則通道檢測晶片溫度與內部參考電壓 129
14.3.1 項目要求 129
14.3.2 項目提示 129
第 15章 實訓項目8——帆板角度與晶片溫度檢測(DMA方式) 130
15.1 相關知識 130
15.1.1 DMA的基本概念 130
15.1.2 STM32F103ZE微控制器的DMA 131
15.1.3 DMA編程涉及的標準外設庫函式 134
15.2 項目實施 135
15.2.1 硬體電路設計 135
15.2.2 程式設計思路 135
15.2.3 程式代碼分析 135
15.3 拓展項目——存儲器到存儲器(M2M)數據傳輸 140
15.3.1 項目內容 140
15.3.2 項目提示 140
第 16章 實訓項目9——串列通信控制風扇轉速並獲取帆板角度 142
16.1 相關知識 142
16.1.1 異步串列通信 142
16.1.2 STM32的通用同步/異步收發器(USART) 143
16.1.3 STM32的USART編程涉及的標準
外設庫函式 144
16.2 項目實施 144
16.2.1 硬體電路設計 144
16.2.2 程式設計思路 145
16.2.3 串列通信協定 145
16.2.4 程式代碼分析 146
16.2.5 使用串口調試助手進行操作 151
16.3 拓展項目——串口採用DMA方式傳送字元 152
16.3.1 項目要求 152
16.3.2 項目提示 152
第 17章 實訓項目10——Wi-Fi控制風扇轉速並獲取帆板角度 154
17.1 相關知識 154
17.1.2 TCP/IP相關知識點 155
17.1.3 Wi-Fi及其三種工作模式 156
17.1.4 Wi-Fi模組ESP8266 156
17.1.5 ESP8266模組的控制指令 157
17.2 項目實施 158
17.2.1 硬體電路設計 158
17.2.2 程式設計思路 159
17.2.3 程式代碼分析 159
17.2.4 使用手機端“網路調試助手”App進行遙控操作 167
第 18章 實訓項目11——基於STM32的物聯網雲平台溫度檢測 169
18.1 相關知識 169
18.1.1 雲服務及其分類 169
18.1.2 物聯網雲平台 171
18.1.3 中國移動物聯網雲平台OneNET 171
18.1.4 數據傳輸過程 172
18.1.5 本項目使用的ESP8266模組控制指令 174
18.2 項目實施 175
18.2.1 在OneNET雲平台上搭建設備和套用 175
18.2.2 程式設計思路 184
18.2.3 程式代碼分析 184
18.2.4 在桌面端或手機端觀察雲平台的溫度數據 189

相關詞條

熱門詞條

聯絡我們