簡(jiǎn)單易學(xué) 玩轉(zhuǎn)Arduino
本書基于Arduino平臺(tái),針對(duì)Arduino入門者透徹講解了Arduino開(kāi)發(fā)的基礎(chǔ)知識(shí)和實(shí)例、工具,詳細(xì)介紹了Arduino編程所需的硬件、編程環(huán)境和Arduino上的編程方法;重點(diǎn)說(shuō)明了Arduino硬件與開(kāi)發(fā)板、各種傳感器的應(yīng)用、遠(yuǎn)程通信與控制(如藍(lán)牙等)的實(shí)現(xiàn)技巧,列舉了機(jī)器人的制作等豐富的應(yīng)用實(shí)例,引導(dǎo)讀者觸類旁通,舉一反三,快速提高開(kāi)發(fā)技能。
本書適合于對(duì)硬件編程感興趣的技術(shù)人員及廣大電子愛(ài)好者、電子技術(shù)人員閱讀,也可作為學(xué)校電子及自動(dòng)化相關(guān)專業(yè)師生用書。
適讀人群 :本書適合于對(duì)硬件編程感興趣的技術(shù)人員及廣大電子愛(ài)好者、電子技術(shù)人員閱讀,也可作為學(xué)校電子及自動(dòng)化相關(guān)專業(yè)師生用書。
《簡(jiǎn)單易學(xué) 玩轉(zhuǎn) Arduino 》特點(diǎn):
* Arduino快速入門:詳細(xì)介紹了arduino硬件與開(kāi)發(fā)板:傳感器應(yīng)用、遠(yuǎn)程通信(如藍(lán)牙等)的實(shí)現(xiàn)技巧。
* 實(shí)例經(jīng)典,程序代碼可靠:機(jī)器人制作等實(shí)例可以直接使用,并引導(dǎo)讀者觸類旁通,舉一反三,提高開(kāi)發(fā)技能。
Arduino是一款便捷靈活、方便上手的開(kāi)源電子原型平臺(tái),是嵌入式、遠(yuǎn)程通信、物聯(lián)網(wǎng)等的優(yōu)選開(kāi)發(fā)平臺(tái),借用電子愛(ài)好者的評(píng)價(jià)——Arduino火的很大一點(diǎn)在于,讓不懂硬件電路的軟件工程師(程序員),玩上硬件了。它基本透明掉了硬件電子部分,只剩下軟件部分,通過(guò)把電子部分包裝成黑箱,使得大量IT人士、普通人、甚至小學(xué)生也能玩的來(lái)。具體來(lái)講,Arduino包含硬件(各種型號(hào)的Arduino板)和軟件(Arduino IDE)。Arduino能通過(guò)各種各樣的傳感器來(lái)感知環(huán)境,通過(guò)控制燈光、電機(jī)和其他的裝置來(lái)反饋、影響環(huán)境。板子上的微控制器可以通過(guò)Arduino的編程語(yǔ)言來(lái)編寫程序,編譯成二進(jìn)制文件,燒錄進(jìn)微控制器。對(duì)Arduino的編程是利用 Arduino編程語(yǔ)言及開(kāi)發(fā)環(huán)境來(lái)實(shí)現(xiàn)的。
本書基于Arduino平臺(tái),針對(duì)Arduino入門者透徹講解了Arduino開(kāi)發(fā)的基礎(chǔ)知識(shí)和實(shí)例、工具,詳細(xì)介紹了Arduino編程所需的硬件、編程環(huán)境和Arduino上的編程方法;重點(diǎn)說(shuō)明了Arduino硬件與開(kāi)發(fā)板、各種傳感器的應(yīng)用、遠(yuǎn)程通信與控制,列舉了機(jī)器人的制作等豐富的應(yīng)用實(shí)例;全書內(nèi)容基礎(chǔ)起點(diǎn)低,語(yǔ)言通俗易懂,圖文并茂,易于初學(xué)者入門并快速提高。
本書由孫德軍主編,由周玉翠、劉美靜副主編,參加編寫的還有孟健杰、彭思文、任振生、蘇玉志、孫富財(cái)、王勝軍、王順利、王先成、吳家盤、武燕兵、許海洋、楊勇、楊興成、楊長(zhǎng)生、張彥、張俊坡、趙繼軍、房瓊、鄧江林等,全書由張伯虎統(tǒng)稿。編寫過(guò)程中得到了許多同行和專家的幫助,在此表示衷心的感謝!
限于水平有限,書中不足之處難免,敬請(qǐng)讀者批評(píng)指正。
編者
查看全部↓
第1章 基礎(chǔ)知識(shí) 1
1.1 Arduino硬件與開(kāi)發(fā)板 1
1.1.1 Arduino硬件與主控芯片 1
1.1.2 Arduino 開(kāi)發(fā)板 3
1.1.3 Arduino UNO開(kāi)發(fā)板的認(rèn)識(shí) 6
1.1.4 Arduino UNO電路分析 8
1.2 Arduino開(kāi)發(fā)環(huán)境(Arduino IDE) 15
1.2.1 獲取Arduino IDE 15
1.2.2 安裝驅(qū)動(dòng) 15
1.2.3 程序燒錄 16
1.2.4 Arduino IDE用戶界面 20
1.3 軟件基礎(chǔ) 26
1.3.1 流程圖 26
1.3.2 C語(yǔ)言基礎(chǔ) 27
1.3.3 控制語(yǔ)句 31
1.3.4 程序結(jié)構(gòu) 34
1.4 Arduino基本函數(shù) 35
1.4.1 數(shù)字I/O口相關(guān)函數(shù) 36
1.4.2 模擬I/O口相關(guān)函數(shù) 38
1.4.3 高級(jí)I/O 41
1.4.4 時(shí)間函數(shù) 42
1.4.5 中斷函數(shù) 44
1.4.6 串口通信函數(shù) 46
1.4.7 數(shù)學(xué)庫(kù) 48
1.4.8 隨機(jī)數(shù) 48
1.4.9 位操作(SPI口) 49
1.5 串口通信 51
1.5.1 通信協(xié)議 51
1.5.2 RS-232 52
1.6 Arduino的應(yīng)用 54
1.6.1 串口的應(yīng)用 54
1.6.2 數(shù)字I/O口的應(yīng)用 56
1.6.3 模擬I/O口的應(yīng)用 58
第2章 Arduino入門實(shí)訓(xùn) 60
2.1 LED燈試驗(yàn) 60
2.1.1 LED基礎(chǔ)知識(shí) 60
2.1.2 LED閃燈試驗(yàn) 65
2.1.3 交通信號(hào)燈試驗(yàn) 70
2.1.4 廣告流水燈試驗(yàn) 71
2.1.5 PWM(脈寬調(diào)制) LED調(diào)光試驗(yàn) 75
2.2 壓電音頻試驗(yàn) 77
2.2.1 壓電陶瓷片和蜂鳴器 77
2.2.2 模擬救護(hù)車警笛試驗(yàn) 79
2.2.3 壓電振動(dòng)傳感器 80
2.3 按鍵試驗(yàn) 82
2.3.1 按鍵開(kāi)關(guān) 82
2.3.2 薄膜鍵盤 83
2.3.3 按鍵控制LED試驗(yàn) 85
2.3.4 按鍵顯示試驗(yàn) 86
2.3.5 用薄膜鍵盤控制LED小燈試驗(yàn) 88
2.3.6 搶答器試驗(yàn) 89
2.4 移位寄存器應(yīng)用試驗(yàn) 91
2.4.1 二進(jìn)制數(shù)制 91
2.4.2 8位二進(jìn)制計(jì)數(shù)器試驗(yàn) 92
2.5 驅(qū)動(dòng)LED顯示器試驗(yàn) 99
2.5.1 LED點(diǎn)陣顯示模塊 99
2.5.2 多路復(fù)用技術(shù) 101
2.5.3 LED點(diǎn)陣顯示模塊基本動(dòng)畫試驗(yàn) 102
2.5.4 滾動(dòng)畫面試驗(yàn) 106
2.5.5 LED數(shù)碼管 110
2.5.6 驅(qū)動(dòng)數(shù)碼管試驗(yàn) 111
2.6 繼電器驅(qū)動(dòng)試驗(yàn) 116
2.6.1 繼電器驅(qū)動(dòng)電路 116
2.6.2 繼電器控制LED試驗(yàn) 116
第3章 Arduino進(jìn)階實(shí)戰(zhàn) 119
3.1 LCD液晶顯示屏的應(yīng)用 119
3.1.1 LCD液晶顯示屏的構(gòu)造及原理 119
3.1.2 1602液晶顯示文字試驗(yàn) 120
3.1.3 LCD溫度顯示試驗(yàn) 129
3.2 直流電機(jī)的應(yīng)用 133
3.2.1 直流電機(jī)工作原理 133
3.2.2 直流電機(jī)簡(jiǎn)單驅(qū)動(dòng)試驗(yàn) 134
3.2.3 L293D直流電機(jī)驅(qū)動(dòng)芯片 136
3.2.4 L293D芯片應(yīng)用試驗(yàn) 139
3.3 步進(jìn)電機(jī)的應(yīng)用 141
3.3.1 步進(jìn)電機(jī) 141
3.3.2 ULN2003A步進(jìn)電機(jī)驅(qū)動(dòng)芯片 143
3.3.3 步進(jìn)電機(jī)驅(qū)動(dòng)試驗(yàn) 144
3.4 舵機(jī)的應(yīng)用 148
3.4.1 舵機(jī)的結(jié)構(gòu)和工作原理 148
3.4.2 Arduino舵機(jī)控制函數(shù)庫(kù) 150
3.4.3 簡(jiǎn)單的舵機(jī)控制試驗(yàn) 151
3.4.4 兩個(gè)舵機(jī)控制試驗(yàn) 153
3.4.5 兩個(gè)舵機(jī)分別控制試驗(yàn) 156
3.5 兩輪機(jī)器底盤的應(yīng)用 158
3.5.1 電機(jī)驅(qū)動(dòng)擴(kuò)展模塊 158
3.5.2 兩輪機(jī)器底盤 159
3.5.3 兩輪機(jī)器底盤控制試驗(yàn) 159
3.6 SD存儲(chǔ)卡的應(yīng)用 162
3.6.1 SD存儲(chǔ)卡 162
3.6.2 SD卡庫(kù) 163
3.6.3 SD存儲(chǔ)卡讀寫試驗(yàn) 164
第4章 傳感器的應(yīng)用 171
4.1 光敏電阻傳感器的應(yīng)用 171
4.1.1 光敏電阻的應(yīng)用 171
4.1.2 光控LED點(diǎn)亮試驗(yàn) 172
4.2 溫度傳感器的應(yīng)用 174
4.2.1 模擬溫度傳感器 174
4.2.2 基于LM35的計(jì)算機(jī)溫度測(cè)量試驗(yàn) 174
4.2.3 單線數(shù)字溫度傳感器應(yīng)用 176
4.3 紅外接近開(kāi)關(guān)的應(yīng)用 181
4.3.1 紅外接近開(kāi)關(guān) 181
4.3.2 傳感器擴(kuò)展板 182
4.3.3 障礙物檢測(cè)試驗(yàn) 183
4.4 紅外測(cè)距傳感器的應(yīng)用 184
4.4.1 紅外測(cè)距傳感器 184
4.4.2 液晶屏顯示距離試驗(yàn) 185
4.5 超聲波測(cè)距傳感器的應(yīng)用 189
4.5.1 超聲波測(cè)距傳感器原理 189
4.5.2 HC-SR04型超聲波測(cè)距模塊 190
4.5.3 利用串口輸出的超聲波測(cè)距試驗(yàn) 190
4.5.4 距離控制小燈試驗(yàn) 193
4.6 紅外避障傳感器的應(yīng)用 194
4.6.1 紅外避障傳感器 194
4.6.2 紅外避障傳感器應(yīng)用試驗(yàn) 195
4.7 紅外尋線傳感器的應(yīng)用 196
4.7.1 紅外尋線傳感器 196
4.7.2 紅外尋線傳感器應(yīng)用試驗(yàn) 197
4.8 激光傳感器的應(yīng)用 198
4.8.1 激光傳感器 198
4.8.2 激光傳感器應(yīng)用試驗(yàn) 199
4.9 傾斜傳感器的應(yīng)用 200
4.9.1 傾斜傳感器 200
4.9.2 傾斜傳感器應(yīng)用試驗(yàn) 201
4.10 水銀碰撞傳感器的應(yīng)用 202
4.10.1 水銀碰撞傳感器 202
4.10.2 水銀碰撞傳感器應(yīng)用試驗(yàn) 202
4.11 振動(dòng)傳感器的應(yīng)用 203
4.11.1 振動(dòng)傳感器 203
4.11.2 振動(dòng)傳感器應(yīng)用試驗(yàn) 204
4.12 敲擊傳感器的應(yīng)用 205
4.12.1 敲擊傳感器 205
4.12.2 敲擊傳感器應(yīng)用試驗(yàn) 205
4.13 金屬觸摸傳感器的應(yīng)用 206
4.13.1 金屬觸摸傳感器 206
4.13.2 金屬觸摸傳感器的應(yīng)用實(shí)驗(yàn) 206
4.14 火焰?zhèn)鞲衅鞯膽?yīng)用 208
4.14.1 火焰?zhèn)鞲衅?208
4.14.2 火焰?zhèn)鞲衅髂M輸出應(yīng)用試驗(yàn) 208
4.14.3 火焰?zhèn)鞲衅鲾?shù)字輸出應(yīng)用試驗(yàn) 209
4.15 旋轉(zhuǎn)編碼器的應(yīng)用 210
4.15.1 旋轉(zhuǎn)編碼器 210
4.15.2 旋轉(zhuǎn)編碼器的應(yīng)用試驗(yàn) 211
4.16 溫濕度一體傳感器 213
4.16.1 DHT11型數(shù)字溫濕度傳感器 213
4.16.2 DHT11應(yīng)用試驗(yàn) 214
4.17 顏色傳感器的應(yīng)用 216
4.17.1 三原色原理 216
4.17.2 TCS3200D型顏色傳感器 216
4.17.3 顏色傳感器應(yīng)用試驗(yàn) 217
4.18 PS2搖桿的應(yīng)用 221
4.18.1 Joystick PS2搖桿 221
4.18.2 Joystick PS2搖桿控制液晶屏顯示試驗(yàn) 222
4.19 氣壓傳感器的應(yīng)用 223
4.19.1 氣壓傳感器 223
4.19.2 BMP085型氣壓傳感器 224
4.19.3 基于BMP085的氣壓測(cè)量試驗(yàn) 225
4.20 運(yùn)動(dòng)檢測(cè)傳感器的應(yīng)用 231
4.20.1 MMA7361型加速度傳感器 231
4.20.2 MMA7361型加速度傳感器的應(yīng)用試驗(yàn) 231
4.20.3 ADXL345加速度傳感器 234
4.20.4 I2C總線函數(shù)庫(kù) 235
4.20.5 ADXL345加速度傳感器應(yīng)用試驗(yàn) 236
4.20.6 MPU6050運(yùn)動(dòng)檢測(cè)傳感器的應(yīng)用 239
4. 21 磁阻傳感器的應(yīng)用 242
4.21.1 HMC5883L型磁阻傳感器 243
4.21.2 HMC5883L型磁阻傳感器應(yīng)用試驗(yàn) 244
第5章 Arduino的遠(yuǎn)程通信與控制 245
5.1 無(wú)線通信網(wǎng)絡(luò) 245
5.1.1 1對(duì)多通信 245
5.1.2 多對(duì)多通信 246
5.1.3 混合式通信 247
5.2 紅外遙控的應(yīng)用 247
5.2.1 紅外線 247
5.2.2 紅外遙控系統(tǒng)原理 248
5.2.3 紅外遙控試驗(yàn) 252
5.2.4 家電遙控器替代試驗(yàn) 256
5.3 Arduino的網(wǎng)絡(luò)應(yīng)用 259
5.3.1 Ethernet庫(kù) 260
5.3.2 網(wǎng)絡(luò)擴(kuò)展模塊Ethernet Shield 261
5.3.3 Arduino Web服務(wù)器 268
5.3.4 網(wǎng)絡(luò)溫度傳感器試驗(yàn) 270
5.4 Arduino的無(wú)線網(wǎng)絡(luò)應(yīng)用 275
5.4.1 WiFi擴(kuò)展板 276
5.4.2 WiFi庫(kù) 277
5.4.3 無(wú)線加速度傳感器試驗(yàn) 278
5.4.4 WiFi轉(zhuǎn)串口模塊的應(yīng)用 281
5.5 無(wú)線藍(lán)牙通信 291
5.5.1 藍(lán)牙技術(shù)簡(jiǎn)介 291
5.5.2 BLK-MD-BC04-B型藍(lán)牙模塊 292
5.5.3 BLK-MD-BC04-B型藍(lán)牙模塊AT指令集 293
5.5.4 主從配置 303
5.5.5 藍(lán)牙控制點(diǎn)亮LED試驗(yàn) 310
5.6 ZigBee通信技術(shù)的應(yīng)用 313
5.6.1 ZigBee通信技術(shù) 313
5.6.2 DRF1605H型ZigBee無(wú)線模塊的應(yīng)用 314
5.6.3 XBee-PRO模塊的應(yīng)用 325
5.7 無(wú)線數(shù)傳模塊的應(yīng)用 331
5.7.1 2.4GHz無(wú)線數(shù)傳模塊的應(yīng)用 331
5.7.2 APC220無(wú)線數(shù)傳模塊的應(yīng)用 342
第6章 輪式機(jī)器人的制作 350
6.1 機(jī)器人基礎(chǔ)知識(shí) 350
6.1.1 機(jī)器人的基本組成 350
6.1.2 機(jī)器人的分類 351
6.1.3 自律型移動(dòng)機(jī)器人 351
6.1.4 機(jī)器人的運(yùn)動(dòng) 352
6.2 輪式機(jī)器人的制作 354
6.2.1 動(dòng)力機(jī)構(gòu) 354
6.2.2 組裝底盤 356
6.2.3 組裝上蓋 361
6.2.4 安裝控制板 362
6.2.5 安裝傳感器 362
6.3 輪式機(jī)器人運(yùn)動(dòng)試驗(yàn) 364
6.3.1 車輪驅(qū)動(dòng)調(diào)試 364
6.3.2 運(yùn)動(dòng)程序設(shè)計(jì) 365
6.3.3 機(jī)器人運(yùn)動(dòng)試驗(yàn) 367
6.3.4 程序簡(jiǎn)化 368
6.4 機(jī)器人避障 372
6.5 機(jī)器人尋線運(yùn)動(dòng) 374
6.6 機(jī)器人電腦遙控試驗(yàn) 375
6.6.1 硬件連接 375
6.6.2 程序代碼 376
6.7 使用無(wú)線遙控器控制機(jī)器人試驗(yàn) 377
6.7.1 搖桿擴(kuò)展板 377
6.7.2 制作無(wú)線遙控器 378
6.7.3 遙控機(jī)器人調(diào)速試驗(yàn) 380
參考文獻(xiàn) 384
查看全部↓