單片機(jī)基礎(chǔ)與Arduino應(yīng)用(第2版)
定 價(jià):49 元
- 作者:王俊
- 出版時(shí)間:2024/10/1
- ISBN:9787121489921
- 出 版 社:電子工業(yè)出版社
- 中圖法分類:TP368.1
- 頁(yè)碼:244
- 紙張:
- 版次:01
- 開(kāi)本:16開(kāi)
本書(shū)以Arduino單片機(jī)開(kāi)發(fā)為索引,較為系統(tǒng)地介紹了單片機(jī)的工作原理、編程方法,并給出了使用實(shí)例。全書(shū)共22章,通過(guò)介紹單片機(jī)的基本知識(shí)引入Arduino單片機(jī),并通過(guò)諸多實(shí)例講解了Arduino單片機(jī)的結(jié)構(gòu)、工作原理、編程方法及調(diào)試方法等,基本覆蓋了單片機(jī)入門(mén)和Arduino開(kāi)發(fā)所需的知識(shí)點(diǎn)。
王俊,主持并完成了多項(xiàng) “973項(xiàng)目”、“863項(xiàng)目”、“國(guó)家自然科學(xué)基金”、“重點(diǎn)實(shí)驗(yàn)室基金”、“預(yù)研項(xiàng)目”、“科研院所項(xiàng)目”,在“多目標(biāo)跟蹤”、“目標(biāo)微動(dòng)特性提取與識(shí)別”、“散射點(diǎn)三維重構(gòu)”、“高分辨率雷達(dá)處理與識(shí)別”、“雷達(dá)目標(biāo)識(shí)別”、“分布式雷達(dá)空間目標(biāo)三維成像方法”、“基于深度學(xué)習(xí)的目標(biāo)識(shí)別技術(shù)”等方面開(kāi)展研究工作,并取得一定成果,發(fā)表相關(guān)論文100余篇,其中30余篇為SCI(E)源刊,申請(qǐng)國(guó)家發(fā)明專利30余項(xiàng),已獲批12項(xiàng)。
第1章 單片機(jī)概述 1
1.1 單片機(jī)簡(jiǎn)介 1
1.2 計(jì)算機(jī)的發(fā)展史 2
1.3 單片機(jī)的發(fā)展史 3
1.4 單片機(jī)的應(yīng)用 4
1.5 如何學(xué)習(xí)單片機(jī) 6
1.6 小結(jié) 6
第2章 Arduino入門(mén) 7
2.1 Arduino的誕生 7
2.2 Arduino的特性 8
2.3 Arduino硬件介紹 9
2.3.1 Arduino UNO介紹 9
2.3.2 Arduino UNO核心電路 11
2.3.3 Arduino UNO外圍系統(tǒng) 12
2.4 搭建Arduino開(kāi)發(fā)環(huán)境 14
2.4.1 安裝Arduino IDE 14
2.4.2 配置Arduino IDE 16
2.5 編寫(xiě)Arduino程序 17
2.5.1 Arduino程序構(gòu)成 17
2.5.2 編寫(xiě)Arduino程序示例 18
2.6 小結(jié) 20
第3章 Arduino數(shù)字輸入/輸出接口 21
3.1 LED的工作原理 21
3.2 數(shù)字接口的工作原理 22
3.2.1 數(shù)字接口的數(shù)量與布局 22
3.2.2 輸入或輸出模式設(shè)置 23
3.2.3 數(shù)字接口功能函數(shù) 23
3.3 數(shù)字輸出接口 24
3.3.1 系統(tǒng)連接 24
3.3.2 流程圖 25
3.3.3 程序設(shè)計(jì) 25
3.3.4 燒寫(xiě) 26
3.4 數(shù)字輸入接口 27
3.4.1 系統(tǒng)連接 27
3.4.2 流程圖 27
3.4.3 程序設(shè)計(jì) 28
3.4.4 燒寫(xiě) 28
3.5 小結(jié) 29
第4章 Arduino的中斷機(jī)制與定時(shí)器 30
4.1 中斷系統(tǒng)概述 30
4.1.1 中斷的概念 30
4.1.2 中斷源 31
4.1.3 中斷優(yōu)先級(jí) 31
4.1.4 中斷的技術(shù)優(yōu)勢(shì) 31
4.2 Arduino中與中斷有關(guān)的函數(shù) 32
4.3 外部中斷實(shí)驗(yàn) 32
4.3.1 系統(tǒng)連接 32
4.3.2 流程圖 33
4.3.3 程序設(shè)計(jì) 33
4.3.4 燒寫(xiě) 34
4.4 定時(shí)器的工作原理 34
4.5 Arduino定時(shí)器的相關(guān)庫(kù)函數(shù) 35
4.5.1 TimerOne庫(kù) 35
4.5.2 MsTimer2庫(kù) 36
4.6 定時(shí)器實(shí)驗(yàn) 36
4.6.1 系統(tǒng)連接 36
4.6.2 流程圖 36
4.6.3 程序設(shè)計(jì) 37
4.6.4 燒寫(xiě) 38
4.7 小結(jié) 38
第5章 Arduino串口通信 39
5.1 串口的工作原理 39
5.1.1 串口通信的基本概念 39
5.1.2 字符幀 40
5.1.3 波特率 41
5.1.4 串口通信制式 41
5.1.5 串口工作流程 41
5.1.6 接口電路 42
5.2 Arduino的串口 43
5.2.1 Arduino串口引腳 43
5.2.2 Serial庫(kù)函數(shù) 44
5.3 串口控制LED的閃爍頻率 46
5.3.1 流程圖 46
5.3.2 程序設(shè)計(jì) 46
5.4 串口控制RGB-LED的顏色 47
5.4.1 RGB-LED的工作原理 47
5.4.2 系統(tǒng)連接 47
5.4.3 流程圖 48
5.4.4 程序設(shè)計(jì) 49
5.4.5 燒寫(xiě) 50
5.4 小結(jié) 51
第6章 Arduino之按鍵與矩陣鍵盤(pán) 52
6.1 按鍵檢測(cè)原理 52
6.1.1 Arduino之按鍵 53
6.1.2 Arduino之矩陣鍵盤(pán) 53
6.1.3 按鍵消抖 55
6.2 獨(dú)立按鍵功能實(shí)現(xiàn) 56
6.2.1 系統(tǒng)連接 56
6.2.2 流程圖 56
6.2.3 程序設(shè)計(jì) 57
6.2.4 燒寫(xiě) 58
6.3 矩陣鍵盤(pán)功能實(shí)現(xiàn) 58
6.3.1 系統(tǒng)連接 58
6.3.2 流程圖 59
6.3.3 程序設(shè)計(jì) 59
6.3.4 燒寫(xiě) 60
6.4 小結(jié) 60
第7章 Arduino控制數(shù)碼管 61
7.1 數(shù)碼管的工作原理 61
7.1.1 LED的兩種接法 62
7.1.2 兩種顯示方式 64
7.2 靜態(tài)顯示實(shí)現(xiàn) 64
7.2.1 系統(tǒng)連接 64
7.2.2 流程圖 65
7.2.3 程序設(shè)計(jì) 65
7.2.4 燒寫(xiě) 67
7.3 動(dòng)態(tài)顯示實(shí)現(xiàn) 67
7.3.1 系統(tǒng)連接 67
7.3.2 流程圖 68
7.3.3 程序設(shè)計(jì) 68
7.3.4 燒寫(xiě) 69
7.4 小結(jié) 70
第8章 Arduino之LED點(diǎn)陣與RGB燈帶 71
8.1 Arduino之LED點(diǎn)陣 71
8.1.1 工作原理 71
8.1.2 系統(tǒng)連接 72
8.1.3 流程圖 73
8.1.4 程序設(shè)計(jì) 73
8.1.5 燒寫(xiě) 75
8.2 Arduino之RGB燈帶 76
8.2.1 工作原理 76
8.2.2 Adafruit NeoPixel庫(kù)介紹 78
8.2.3 系統(tǒng)連接 78
8.2.4 流程圖 78
8.2.5 程序設(shè)計(jì) 79
8.2.6 燒寫(xiě) 80
8.3 小結(jié) 80
第9章 Arduino之液晶屏 81
9.1 工作原理 81
9.1.1 液晶的概念 81
9.1.2 液晶的通光原理 81
9.1.3 液晶顯示器的工作原理 82
9.1.4 LCD-1602的工作原理 83
9.1.5 LiquidCrystal庫(kù)介紹 86
9.2 系統(tǒng)連接 86
9.3 流程圖 86
9.4 程序設(shè)計(jì) 87
9.5 燒寫(xiě) 88
9.6 小結(jié) 88
第10章 Arduino模擬輸入/輸出接口 89
10.1 模擬接口的工作原理 89
10.1.1 模擬輸入 89
10.1.2 模擬輸出 90
10.1.3 模擬接口的位置 90
10.1.4 模擬輸入接口的相關(guān)函數(shù) 91
10.1.5 模擬輸出接口的相關(guān)函數(shù) 92
10.2 Arduino之搖桿 92
10.2.1 系統(tǒng)連接 92
10.2.2 流程圖 93
10.2.3 程序設(shè)計(jì) 93
10.2.4 燒寫(xiě) 94
10.3 Arduino之呼吸燈 94
10.3.1 系統(tǒng)連接 95
10.3.2 流程圖 95
10.3.3 程序設(shè)計(jì) 96
10.3.4 燒寫(xiě) 96
10.4 小結(jié) 97
第11章 蜂鳴器實(shí)驗(yàn) 98
11.1 蜂鳴器的工作原理 98
11.2 Arduino之蜂鳴器 99
11.2.1 系統(tǒng)連接 99
11.2.2 程序設(shè)計(jì) 99
11.2.3 燒寫(xiě) 100
11.3 Arduino之電子琴 101
11.3.1 系統(tǒng)連接 101
11.3.2 程序設(shè)計(jì) 101
11.3.3 燒寫(xiě) 102
11.4 小結(jié) 102
第12章 Arduino之電機(jī) 103
12.1 電機(jī)分類 103
12.2 Arduino之直流電機(jī) 104
12.2.1 系統(tǒng)連接 104
12.2.2 流程圖 105
12.2.3 程序設(shè)計(jì) 105
12.2.4 燒寫(xiě) 106
12.3 Arduino之伺服電機(jī) 106
12.3.1 系統(tǒng)連接 107
12.3.2 流程圖 107
12.3.3 程序設(shè)計(jì) 107
12.3.4 燒寫(xiě) 108
12.4 小結(jié) 109
第13章 Arduino之旋鈕與編碼器 110
13.1 Arduino之旋鈕 110
13.1.1 工作原理 110
13.1.2 系統(tǒng)連接 111
13.1.3 流程圖 112
13.1.4 程序設(shè)計(jì) 113
13.1.5 燒寫(xiě) 115
13.2 Arduino之編碼器 116
13.2.1 工作原理 116
13.2.2 系統(tǒng)連接 117
13.2.3 流程圖 118
13.2.4 程序設(shè)計(jì) 119
13.2.5 燒寫(xiě) 120
13.3 小結(jié) 120
第14章 Arduino之傳感器 121
14.1 Arduino之DHT11溫濕度傳感器 121
14.1.1 工作原理 121
14.1.2 DHT Sensor庫(kù)介紹 124
14.1.3 系統(tǒng)連接 124
14.1.4 流程圖 124
14.1.5 程序設(shè)計(jì) 125
14.1.6 燒寫(xiě) 126
14.2 Arduino之MPU-6050六軸加速度計(jì) 127
14.2.1 姿態(tài)檢測(cè)介紹 127
14.2.2 工作原理 128
14.2.3 Adafruit MPU-6050庫(kù)介紹 129
14.2.4 系統(tǒng)連接 129
14.2.5 流程圖 130
14.2.6 程序設(shè)計(jì) 131
14.2.7 燒寫(xiě) 132
14.3 Arduino之HC-SR04超聲波測(cè)距 133
14.3.1 工作原理 133
14.3.2 系統(tǒng)連接 133
14.3.3 流程圖 134
14.3.4 程序設(shè)計(jì) 135
14.3.5 燒寫(xiě) 135
14.4 小結(jié) 136
第15章 基于Arduino的智能小車 137
15.1 工作原理 137
15.1.1 小車的結(jié)構(gòu) 137
15.1.2 ESP8266 137
15.1.3 L298N電機(jī)驅(qū)動(dòng)模塊 138
15.1.4 超聲波避障模塊 139
15.2 系統(tǒng)連接 140
15.3 流程圖 140
15.4 程序設(shè)計(jì) 142
15.4.1 ESP8266 Wi-Fi模塊調(diào)試 142
15.4.2 Arduino代碼 142
15.5 燒寫(xiě) 147
15.6 小結(jié) 148
第16章 AVR單片機(jī)的基本結(jié)構(gòu) 149
16.1 AVR單片機(jī)概述 149
16.2 命名、引腳及最小系統(tǒng) 149
16.2.1 AVR單片機(jī)的命名規(guī)則 149
16.2.2 AVR單片機(jī)引腳功能介紹 150
16.2.3 AVR單片機(jī)的最小系統(tǒng) 152
16.3 內(nèi)部結(jié)構(gòu) 153
16.4 CPU 155
16.4.1 算術(shù)邏輯單元 155
16.4.2 狀態(tài)寄存器 155
16.4.3 通用工作寄存器組 156
16.4.4 堆棧指針寄存器 157
16.4.5 程序計(jì)數(shù)器、指令寄存器和指令譯碼器 157
16.5 指令集 157
16.6 存儲(chǔ)空間 161
16.6.1 程序空間 161
16.6.2 數(shù)據(jù)空間 161
16.6.3 EEPROM空間 162
16.7 熔絲位 162
16.7.1 熔絲位概念介紹 162
16.7.2 重要熔絲位的配置 163
16.8 使用Microchip Studio開(kāi)發(fā)ATmega328P 164
16.8.1 Microchip Studio介紹 164
16.8.2 Microchip Studio的安裝 164
16.8.3 新建工程 165
16.8.4 工具配置 166
16.8.5 編譯和燒寫(xiě)程序 167
16.8.6 實(shí)驗(yàn)現(xiàn)象 168
16.9 小結(jié) 169
第17章 AVR單片機(jī)的數(shù)字輸入/輸出 170
17.1 I/O寄存器控制 170
17.2 流程圖 174
17.3 程序設(shè)計(jì) 175
17.3.1 單片機(jī)C語(yǔ)言基礎(chǔ) 175
17.3.2 數(shù)字接口輸出實(shí)驗(yàn)程序 176
17.3.3 數(shù)字接口輸入實(shí)驗(yàn)程序 176
17.4 系統(tǒng)連接 177
17.5 燒寫(xiě) 179
17.6 小結(jié) 179
第18章 AVR單片機(jī)的中斷和定時(shí)器系統(tǒng) 181
18.1 中斷系統(tǒng)概述 181
18.1.1 中斷向量表 181
18.1.2 中斷優(yōu)先級(jí) 181
18.1.3 中斷觸發(fā)條件 182
18.1.4 外部中斷 182
18.2 中斷控制寄存器 182
18.2.1 全局中斷控制 182
18.2.2 外部中斷控制寄存器 182
18.3 定時(shí)器的工作原理 183
18.4 定時(shí)器控制寄存器 184
18.4.1 定時(shí)器0/2控制寄存器 184
18.4.2 定時(shí)器1控制寄存器 186
18.5 外部中斷實(shí)驗(yàn) 187
18.5.1 系統(tǒng)連接 187
18.5.2 程序設(shè)計(jì) 188
18.5.3 燒寫(xiě) 189
18.6 定時(shí)中斷實(shí)驗(yàn) 189
18.6.1 系統(tǒng)連接 189
18.6.2 程序設(shè)計(jì) 190
18.6.3 燒寫(xiě) 190
18.7 小結(jié) 191
第19章 AVR單片機(jī)串口通信 192
19.1 AVR串口相關(guān)寄存器介紹 192
19.2 AVR串口相關(guān)寄存器各位的功能和配置 194
19.2.1 串口寄存器各位的功能 194
19.2.2 串口寄存器配置 194
19.3 流程圖 195
19.3.1 串口數(shù)據(jù)發(fā)送操作 195
19.3.2 串口數(shù)據(jù)接收操作 195
19.4 程序設(shè)計(jì) 196
19.5 燒寫(xiě) 197
19.6 小結(jié) 198
第20章 AVR單片機(jī)獨(dú)立按鍵、矩陣鍵盤(pán)、數(shù)碼管 199
20.1 獨(dú)立按鍵、矩陣鍵盤(pán)、數(shù)碼管 199
20.2 I/O寄存器控制 199
20.3 AVR單片機(jī)控制獨(dú)立按鍵點(diǎn)亮LED 199
20.3.1 系統(tǒng)連接 199
20.3.2 流程圖 200
20.3.3 程序設(shè)計(jì) 200
20.3.4 燒寫(xiě) 201
20.4 AVR單片機(jī)矩陣鍵盤(pán)功能實(shí)現(xiàn) 201
20.4.1 系統(tǒng)連接 201
20.4.2 流程圖 202
20.4.3 程序設(shè)計(jì) 203
20.4.4 燒寫(xiě) 204
20.5 AVR數(shù)碼管靜態(tài)顯示 205
20.5.1 系統(tǒng)連接 205
20.5.2 流程圖 206
20.5.3 程序設(shè)計(jì) 206
20.5.4 燒寫(xiě) 207
20.6 AVR數(shù)碼管動(dòng)態(tài)顯示 207
20.6.1 系統(tǒng)連接 207
20.6.2 流程圖 208
20.6.3 程序設(shè)計(jì) 209
20.6.4 燒寫(xiě) 210
20.7 小結(jié) 210
第21章 AVR單片機(jī)模數(shù)轉(zhuǎn)換 211
21.1 模數(shù)轉(zhuǎn)換原理概述 211
21.2 相關(guān)設(shè)置寄存器 212
21.3 ADC單次轉(zhuǎn)換實(shí)驗(yàn) 215
21.3.1 系統(tǒng)連接 215
21.3.2 程序設(shè)計(jì) 215
21.3.3 燒寫(xiě) 216
21.4 ADC連續(xù)轉(zhuǎn)換實(shí)驗(yàn) 217
21.4.1 程序設(shè)計(jì) 217
21.4.2 燒寫(xiě) 219
21.5 小結(jié) 219
第22章 基于AVR單片機(jī)的打地鼠游戲 220
22.1 LCD-12864的工作原理 220
22.2 系統(tǒng)連接 221
22.3 流程圖 222
22.4 程序設(shè)計(jì) 223
22.5 燒寫(xiě) 228
22.6 小結(jié) 229