第1章 Arduino介紹 1
1.1 微控制器 1
1.2 Arduino開發板的探索之旅 3
1.2.1 電源介面 4
1.2.2 供電介面 4
1.2.3 類比輸入介面 4
1.2.4 數位介面 5
1.2.5 微控制器 5
1.2.6 其他元件 6
1.3 Arduino的起源 7
1.4 Arduino家族 8
1.4.1 Uno和Leonardo 9
1.4.2 Mega和Due 9
1.4.3 微型和小型Arduino開發板 10
1.4.4 Yun 11
1.4.5 Lilypad 12
1.4.6 其他“官方”開發板 12
1.5 Arduino複製品和變型 13
1.6 本章小結 13
第2章 啟程 15
2.1 上電 15
2.2 安裝軟體 16
2.3 上傳你的第一個項目 16
2.4 Arduino應用程式 21
2.5 本章小結 23
第3章 C語言基礎 25
3.1 程式設計 25
3.2 什麼是程式設計語言? 27
3.3 Blink——再來一次! 31
3.4 變數 33
3.5 C語言實驗 35
3.6 數值變數和算術運運算元 36
3.7 控制語句 39
3.7.1 if語句 39
3.7.2 for語句 41
3.7.3 while語句 44
3.8 常量 45
3.9 本章小結 45
第4章 函數 47
4.1 什麼是函數? 47
4.2 參數 48
4.3 全域變數、區域變數和靜態變數 50
4.4 返回值 53
4.5 其他變數類型 54
4.5.1 float(浮點型) 54
4.5.2 boolean(布林型) 55
4.5.3 其他資料類型 56
4.6 代碼風格 58
4.6.1 縮進 58
4.6.2 花括弧 59
4.6.3 空白 60
4.6.4 注釋 60
4.7 本章小結 62
第5章 陣列和字串 63
5.1 陣列 63
5.2 字串 67
5.2.1 字串常量 68
5.2.2 字串變數 69
5.3 摩爾斯電碼轉換器 70
5.3.1 數據 71
5.3.2 全域變數和setup函數 72
5.3.3 loop函數 72
5.3.4 flashSequence函數 75
5.3.5 flashDotOrDash函數 76
5.3.6 整合 77
5.4 本章小結 79
第6章 輸入和輸出 81
6.1 數位輸出 81
6.2 數位輸入 85
6.2.1 上拉電阻 85
6.2.2 內部上拉電阻 88
6.2.3 防抖動 89
6.3 模擬輸出 94
6.4 模擬輸入 96
6.5 本章小結 98
第7章 Arduino標準類庫 99
7.1 亂數 99
7.2 數學函數 102
7.3 位操作 103
7.4 高級I/O 105
7.4.1 生成音調 105
7.4.2 移位暫存器 107
7.4.3 中斷 107
7.5 本章小結 109
第8章 資料存儲 111
8.1 常量 111
8.2 將資料存儲在快閃記憶體中 112
8.3 EEPROM 114
8.3.1 在EEPROM中存儲整數 116
8.3.2 使用AVR EEPROM庫 117
8.3.3 在EEPROM中存儲浮點數 118
8.3.4 在EEPROM中存儲字串 118
8.3.5 清除EEPROM的內容 120
8.4 壓縮 121
8.5 本章小結 122
第9章 顯示器 123
9.1 字母數位元LCD顯示器 124
9.2 USB留言板 125
9.3 使用顯示器 127
9.4 其他LCD庫函數 128
9.5 OLED圖形顯示器 128
9.6 連接OLED顯示器 129
9.7 軟體 130
9.8 本章小結 132
第10章 Arduino物聯網程式設計 133
10.1 與Web伺服器通信 134
10.1.1 HTTP 134
10.1.2 HTML 134
10.2 將Arduino Uno作為Web伺服器 136
10.3 網路控制的Arduino 139
10.4 Node MCU Web伺服器 145
10.5 網路控制的Node MCU 150
10.6 呼叫Web伺服器 153
10.7 Arduino Uno和IFTTT 156
10.8 Node MCU ESP8266開發板和IFTTT 158
10.9 其他物聯網選擇 160
10.9.1 Arduino Yun 160
10.9.2 Particle Photon 161
10.10 本章小結 161
第11章 C++和庫 163
11.1 物件導向 163
11.2 內置庫示例 164
11.3 編寫自己的庫 165
11.3.1 標頭檔 165
11.3.2 實現檔 166
11.3.3 完成你的庫 167
11.3.4 關鍵字 168
11.3.5 示例 168
11.4 本章小結 171