Arduino完全實戰檢視原始碼討論檢視歷史
Arduino完全實戰 |
《Arduino完全實戰》是2016年1月電子工業出版社出版的圖書,作者是【美】柯博文。
基本內容
書名:Arduino完全實戰
ISBN:978-7-121-27452-7
定價:89.00元
出版時間:2016年1月出版
作者:【美】柯博文 著
內容簡介
Arduino已成為學習微控制器的首選課程,《Arduino完全實戰》是Arduino設計全方位的指引,廣泛且深入核心平台開發,全面講述Arduino所有函數與API(應用程序界面),並介紹了市面上常見的數十種傳感器,輔以實例設計。最後,結合Android和iOS系統,導入雲端系統與物聯網的運用基礎,用豐富的實例介紹市面上的傳感器,書中還特別介紹了可免費學習Arduino的聯機仿真器運用,並額外提供教學視頻與執行視頻,以搭配書籍輔助學習。
《Arduino完全實戰》適合想了解Arduino 的來龍去脈的技術人群。
目錄
1 簡介篇 1
1.1 什麼是Arduino 1
1.2 Arduino的特色 1
1.3 Arduino歷史 2
1.4 Arduino相關網站 4
2 Arduino硬件介紹 5
2.1 Arduino硬件介紹 5
2.2 Arduino硬件外觀 8
2.2.1 Arduino硬件 8
2.2.2 Arduino外接板 12
2.3 自製Arduino板子 14
2.4 Arduino MCU IC介紹 18
2.4.1 ATMega8 18
2.4.2 ATMega168 19
2.5 相關網站介紹 20
2.5.1 畫硬件電路圖Fritzing 20
2.5.2 本書博客與討論區 20
3 Arduino開發環境介紹 21
3.1 Arduino軟件 21
3.1.1 安裝Arduino 22
3.1.2 安裝Arduino的Windows驅動程序 23
3.2 用Eclipse寫Arduino 27
3.3 Arduino 漢化設置 27
4 我的第一個Arduino 29
4.1 麵包板怎麼接 29
4.2 Arduino上的第一個程序:LED閃爍 30
4.3 確認你的程序是否編譯成功 34
4.4 燒錄I/O Board 34
4.5 了解我的第一個Arduino程序 35
5 Digital數字輸入與輸出 42
5.1 Digital Output設置Pin的輸出——霹靂燈示例 42
5.2 Digital Input——讀取按鈕信號數值code 45
6 Analog模擬 48
6.1 Ana logInput——讀取可變電阻的數據 48
6.2 Analog Output的輸出,示例LED的明暗控制 51
7 UART、Serial RX/TX——TTL、RS232傳輸數據 54
7.1 UART的數據傳遞 55
7.1.1 通過UART顯示數據到Serial Monitor——除錯功能 55
7.1.2 通過UART在兩個Arduino之間相互傳遞數據 57
8 PWM脈衝寬度調製61
8.1 PWM Output 62
8.2 PWM通過DigitalWrite達成效果 63
9 Pulse脈衝 65
9.1 pulseIn(pin,state,timeout) 65
9.2 pulseIn示例——查用戶多久沒有按下按鈕 65
10 SPI 68
10.1 SPI介紹 68
10.1.1 SPI接口數據傳輸 68
10.1.2 SPI類及其成員函數 69
10.2 SPI示例程序——主從端Master 70
10.3 SPI示例程序——被控制端Master 75
11 Arduino函數 81
11.1 輸入/輸出函數 81
11.1.1 pinMode(pin,mode) 81
11.1.2 digitalWrite(pin,value) 81
11.1.3 digitalRead(pin) 82
11.1.4 analogRead(pin) 82
11.1.5 analogWrite(pin,value) 82
11.1.6 analogReference(mode)模擬參考 83
11.1.7 shiftOut(dataPin,clockPin,bitOrder,val) 84
11.2 數據類型datatype 86
11.2.1 int整數 86
11.2.2 float浮點數 87
11.2.3 char字符 89
11.2.4 String字符串 91
11.2.5 byte字符組 93
11.2.6 long長字符 95
11.2.7 word 96
11.2.8 boolean布爾代數 98
11.2.9 short 100
11.2.10 unsigned char、unsigned int、unsigned long 101
11.3 時間 103
11.3.1 millis() 103
11.3.2 delay(ms) 104
11.3.3 delayMicroseconds(us) 105
11.4 數學 107
11.4.1 min(x,y) 107
11.4.2 max(x,y) 108
11.4.3 abs(x) 109
11.4.4 constrain(amt,low,high) 110
11.4.5 map(x,in_min,in_max,out_min,out_max) 111
11.5 邏輯流程控制 112
11.5.1 if...else條件判斷語句 112
11.5.2 switch...case條件判斷語句 115
11.5.3 for循環語法 116
11.5.4 while循環語法 118
11.5.5 do....while循環語法 119
11.5.6 Array,實驗:霹靂燈 120
11.6 中斷函數 123
11.6.1 attachInterrupt(interrupt,function,mode),實驗:按鍵計數器 123
11.6.2 interrupts()使用中斷函數和noInterrupts()停止中斷函數 126
11.7 字符串處理函數String 128
11.7.1 String對象 128
11.7.2 charAt() 130
11.7.3 compareTo() 132
11.7.4 concat() 136
11.7.5 endsWith() 137
11.7.6 equals(),equalsIgnoreCase() 139
11.7.7 getBytes() 141
11.7.8 indexOf() 142
11.7.9 lastIndexOf() 144
11.7.10 length() 146
11.7.11 replace() 147
11.7.12 setCharAt() 149
11.7.13 startsWith() 150
11.7.14 substring() 152
11.7.15 toCharArray() 153
11.7.16 toInt() 155
11.7.17 toLowerCase() 157
11.7.18 toUpperCase() 158
11.7.19 trim() 160
11.8 串行端口通信 161
11.8.1 Serial.begin(baud) 162
11.8.2 Serial.print()和Serial.println() 163
11.8.3 Serial.available()和Serial.read() 165
11.9 特殊函數庫 168
11.10 開發自己專屬的函數庫和設計自己的函數 172
11.10.1 設計函數 172
11.10.2 設計函數庫 175
11.10.3 使用函數庫 177
12 Arduino與其他的傳感器 180
12.1 水銀開關讀取 180
12.2 光敏電阻——實驗小夜燈 182
12.3 晶體管 185
12.3.1NPN晶體管——NPN與DC直流馬達 185
12.3.2 PNP晶體管—— PNP與DC直流馬達 187
12.4濕度傳感器190
12.5溫度傳感器194
12.5.1 實驗:溫度計 196
12.5.2 實驗:冰熱溫度顯示杯 198
12.6 Servo步進馬達 201
12.7 遊戲杆 206
12.8一氧化碳傳感器208
12.9超聲波距離傳感器213
12.9.1 實驗1 尺寸測量器(3個引腳的超聲波距離傳感器) 213
12.9.2 實驗2 倒車警告器(4個引腳的超聲波距離傳感器) 217
12.10火焰傳感器220
12.11一氧化碳/瓦斯傳感器/煙霧傳感器226
12.12 紅外線運動傳感器 231
12.13 繼電器 235
12.14 七段式數字號碼LED 239
12.15土壤濕度傳感器243
12.16 數字鍵盤 246
12.17 聲音監測器 250
12.18 溫度計和濕度計二合一的傳感器DHT11 254
12.19 酒精測試器 258
12.20 DC 馬達 261
12.21 8×8 LED 263
12.22 顏色測試器 278
12.23 FM收音機 283
12.24 藍色背光液晶模塊LCD 2×16面板 286
12.25 RFID卡片閱讀器 289
12.26SD讀卡器294
12.26.1 實驗:顯示SD卡片文件名、容量 295
12.26.2 實驗:使用SD卡片儲存和讀取數據 300
12.27 ADXL345 三軸重力加速度/傾斜角度模塊 304
12.28 三軸磁場傳感器——指南針 309
13 通 信 315
13.1 遙控器 315
13.1.1 讀取遙控器送來的數據 316
13.1.2 把Arduino 當遙控器 319
13.2 與個人計算機傳遞數據 324
13.2.1 PC與Arduino 互傳數據——USB線 325
13.2.2 PC與Arduino互傳數據——RS232 329
13.2.3 與其他程序語言交互——Arduino與Processing溝通 337
13.2.4 與其他程序語言交互——Arduino與Unity溝通 342
13.2.5 與其他程序語言交互——Arduino與Java互傳數據 345
13.2.6 與其他程序語言交互——Scratch 352
13.2.7 與其他程序語言交互——ardublock 354
13.2.8 與其他程序語言交互——Flash連接 355
13.3 MIDI 364
13.4 網絡Ethernet 368
13.4.1 實驗:讀取網頁數據 369
13.4.2 抓取Yahoo的天氣數據 372
13.4.3 Web Server——成為網頁服務器 377
13.5 ZigBee/XBee 382
13.6 藍牙 386
13.6.1 藍牙JY-MCU 389
13.6.2 設定修改藍牙速度 392
13.6.3 修改藍牙設備名稱 396
13.6.4 修改配對密碼; 397
13.7 RF 433MHz 398
14 Arduino與IC實驗 404
14.1 74HC 595——延伸出多個引腳 404
14.2 LM 393——比較A引腳和B引腳哪個大 406
15 Arduino 綜合實驗 409
15.1 音樂播放 409
15.1.1 實驗:利用Tone和Pitch播放音樂 409
15.1.2 實驗:加上功率放大器播放音樂 411
15.1.3 實驗:mp3播放器 413
15.2 計算按鈕按下的時間 418
16 Android手機與Arduino 連接——移動物聯網 419
16.1 Arduino USB Host 419
16.2 使用藍牙將Arduino和Android連接 432
16.3 Android與Arduino連接——通過Android IOIO 445
16.3.1 Android IOIO介紹 445
16.3.2 Android IOIO初次安裝設定 447
16.3.3 Android IOIO實驗 449
16.4 Android與Arduino連接——直接連接 453
16.5 iOS與Arduino連接——通過藍牙4.0BLE 463
作者簡介
柯博文,美國硅谷創業家,全球數十家科技企業與業界指定講師,美國硅谷LoopTek公司CTO,台北錄克公司CEO。目前專注於Google Android和Apple iPhone手機應用軟件開發與物聯網的設備技術,並為大型上市公司開發相關軟件。[1]
參考文獻
- ↑ Arduino完全實戰博文視點網