第1章 开始 1
Arduino是为DIY爱好者设计的 1
Arduino生态系统 3
Arduino平台 3
开源硬件 4
社区 5
Arduino世界 6
Arduino采用C语言还是其他语言 7
我们需要什么元件 9
进入正题 11
安装软件 12
连接到Arduino 13
打开一个框架 13
选择板子和串口 14
上传框架 15
总结 16
第2章 代码架构 17
什么是代码的框架 18
项目1:RGB闪灯 19
把它连上 20
上传代码 21
代码总结 22
Arduino C的结构 22
使用注释 23
基本函数 24
语句和语法 26
确认和上传 27
确认 27
保存 28
上传 29
常见的错误 30
总结 32
第3章 使用变量 34
项目2:七色变色灯 35
把它们连接起来 35
上传源代码 36
代码总结 37
什么是变量 38
声明变量 39
变量名 40
数据类型 41
变量修饰 43
预定义常量 44
变量作用域 44
使用操作符 45
数学运算符:+、-、*、 46
复合操作符:++、--、+=、-=、*=、/= 47
运算顺序 48
总结 49
第4章 进行判断 50
项目3:闪灯 51
把它连接起来 51
上传代码 52
源代码总结 54
对比和逻辑操作 56
控制结构 58
if 58
for 60
while 61
do 62
switch 63
break 64
continue 65
总结 65
第5章 数字输入和输出 67
Arduino I/O扩展 68
项目4:吵闹的蛐蛐 70
把它连起来 70
上传代码 72
源代码总结 73
数字函数 75
pinMode() 75
digitalWrite() 76
digitalRead() 77
状态转换 78
切换 79
计数 81
模式 82
总结 85
第6章 模拟输入、模拟输出 86
模拟量揭秘 87
项目5:呼吸远程信息处理 88
把它们连起来 89
上传代码 91
源代码总结 91
模拟函数 93
analogRead() 93
analogWrite() 95
analogReference() 96
模拟串口监视器 97
读模拟值 98
使用串口监视器 99
它是如何工作的 100
映射数值 101
map() 101
constrain() 102
总结 103
第7章 高级函数 104
时间函数 105
delay() 105
delayMicroseconds() 106
millis() 107
micros() 109
随机函数 109
random() 110
randomSeed() 112
项目6:环境温度 113
连接起来 114
上传源代码 116
源代码总结 118
写函数 121
声明函数 121
调用函数 122
函数返回值 122
函数的参数 124
项目7:HSB彩色LED 125
把它们连起来 125
上传源代码 127
源代码总结 129
硬件中断 130
attachlnterrupt() 131
detachlnterrupt() 132
总结 132
第8章 数组和存储区 133
项目8:占卜机 134
把它们连起来 134
上传源代码 136
源代码总结 139
数组 143
声明数组 143
使用数组 145
字符数组 148
多维数组 149
Arduino存储器 151
检查剩余的RAM 153
使用程序存储空间 154
使用EEPROM 156
总结 158
第9章 硬件库 159
使用库 160
生成一个实例 160
初始化库 161
LiquidCrystal库 161
例子代码:用Arduino显示诗句 163
LiquidCrystal() 164
begin() 165
print() 165
clea r() 166
setCursor() 166
例子代码:符号和Characters() 166
w rite() 168
createChar() 169
例子代码:鱼缸动画 171
scrollDisplayLeft()和scrollDisplayRight() 173
舵机库 174
例子代码:闹钟 176
舵机 177
attach() 177
write() 178
步进电机 179
例子代码:60s扫描 183
Stepper 183
setSpeed() 184
step() 184
SD卡库 186
例子代码:SD卡记录仪 188
File 189
SD.begin() 190
SD.open() 190
close() 191
write() 191
print() 191
例子代码:SD卡闪烁 192
available() 193
read() 193
总结 194
第10章 串行通信和I2C 195
使用硬件串口 196
项目9:串口控制舵机 198
把它连起来 198
上传代码 199
代码总结 200
串口库 200
begin() 201
available() 201
read() 202
print() 204
println() 205
write() 205
项目10:RFID读卡器 206
把东西连接起来 206
上传源代码 207
源代码总结 209
软串口库 210
SoftwareSerial() 211
begin() 211
flush() 211
strncmp() 212
项目11:串行时钟 213
把它们连接起来 213
上传源代码 214
代码总结 217
wire库 222
begin() 222
beginTransmission() 223
endTransmission() 223
write() 223
requestFrom(); 224
read() 224
总结 224
第11章 继续 226
建立更多的项目 226
红利项目1:做个自动发送Twitter的项目 226
红利项目2:使东西运动 229
红利项目3:大型的东西 235
学习其他语言 236
Firmata 236
Processing 238
PureData 239
为社区做贡献 241
参与在线论坛 241
发布你的项目 243
总结 245
第12章 基础电子学 247
基础电子学 248
电路 248
电源 249
常见元件 250
电阻 251
电容 251
二极管 252
三极管 253
开关 255
电机 256
读原理图 257
原型 258
面包板 259
焊接 262
总结 264
附录 资源 265
附加资源 265
论坛 265
指导书 266
其他素材 266
选择供应商 267
本书中用到的元件 268