第1部分 基础知识 3
第1章 Arduino概述 3
1.1 Arduino起源 4
1.2 Arduino可以做什么 5
1.3为什么用Arduino 5
1.4 Arduino开源文化 6
1.5 Arduino发展趋势 7
1.5.1创客文化 7
1.5.2快速原型设计 8
1.6 Arduino趣味实例 8
1.7课后问答 9
1.8本章小结 9
第2章 Arduino硬件资源 10
2.1核心芯片 11
2.2典型开发板 13
2.2.1 Arduino Uno 13
2.2.2 Arduino Nano 17
2.2.3 Arduino ProMini 18
2.2.4 Arduino Leonardo 20
2.2.5 Arduino Mega2560 22
2.3典型扩展板 23
2.3.1 Proto Shield原型开发板 23
2.3.2 GPRS Shield扩展板 24
2.3.3 Arduino Ethernet W5100 R3 Shield网络扩展板 25
2.3.4 WizFi210扩展板 26
2.3.5 Arduino L298N电机驱动扩展板 27
2.3.6 Arduino传感器扩展板 28
2.4简单认识其他不同型号的Arduino控制器 29
2.4.1 Arduino Zero 29
2.4.2 Arduino兼容控制器 30
2.4.3衍生控制器 31
2.5课后问答 31
2.6本章小结 32
第3章 开发环境 33
3.1开发环境概述 33
3.2集成开发环境搭建 33
3.3驱动安装 34
3.4 IDE基本操作 37
3.4.1菜单 37
3.4.2快捷键 38
3.5程序输入、编译及下载 39
3.6开发环境常见问题 40
3.7课后问答 40
3.8本章小结 41
第4章 Arduino语言 42
4.1 Arduino语言概述 42
4.1.1标识符 43
4.1.2关键字 43
4.1.3 Arduino语言运算符 44
4.1.4 Arduino语言控制语句 49
4.1.5 Arduino语言基本结构 56
4.2 Arduino基本函数 62
4.2.1数字I/O 62
4.2.2模拟I/O 64
4.2.3高级I/O 66
4.2.4时间函数 67
4.2.5数学函数 70
4.2.6三角函数 72
4.2.7外部中断函数 72
4.2.8中断使能函数 73
4.2.9串口收发函数 74
4.3 Arduino库函数 79
4.3.1库函数概述 79
4.3.2常用库函数 79
4.4课后问答 81
4.5本章小结 81
第2部分 模块实验 83
第5章 炫酷LED灯 85
5.1实验原理 85
5.2材料清单及数据手册 86
5.2.1材料清单 86
5.2.2核心元件数据手册 87
5.3硬件连接 88
5.4程序设计 90
5.4.1设计思路及流程图 90
5.4.2程序源码 90
5.5调试及实验现象 91
5.6代码回顾 91
5.7拓展实验 92
5.8拓展实验调试及现象 95
5.9技术小贴士 96
5.9.1解析LED正负极判别方法 96
5.9.2 LED分类 97
第6章 按键开关输入 99
6.1实验原理 99
6.2材料清单 100
6.3硬件连接 101
6.4程序设计 102
6.4.1设计思路及流程图 102
6.4.2程序源码 102
6.5调试及实验现象 103
6.6拓展实验 103
6.7拓展实验调试及现象 104
6.8技术小贴士 104
第7章 触摸延时开关 106
7.1实验原理 106
7.2材料清单及数据手册 107
7.2.1材料清单 107
7.2.2核心元件数据手册 107
7.3硬件连接 108
7.4程序设计 109
7.4.1设计思路及流程图 109
7.4.2程序源码 110
7.5调试及实验现象 110
7.6拓展实验 111
7.7拓展实验调试及现象 111
7.8技术小贴士 111
第8章 温度与湿度监测 113
8.1实验原理 113
8.2材料清单及数据手册 114
8.2.1材料清单 114
8.2.2 DHT11数据手册 115
8.3硬件连接 116
8.4程序设计 118
8.4.1设计思路及流程图 118
8.4.2程序源码 118
8.5调试及实验现象 120
8.6拓展实验 120
8.7拓展实验调试及现象 122
8.8技术小贴士 123
第9章 气体监测 124
9.1实验原理 124
9.2材料清单及数据手册 124
9.2.1材料清单 124
9.2.2 MQ-2数据手册 125
9.2.3 MQ-2烟雾传感器模块 126
9.3硬件连接 126
9.4程序设计 128
9.4.1设计思路及流程图 128
9.4.2程序源码 128
9.5调试及实验现象 128
9.6技术小贴士 130
第10章 LCD显示 131
10.1实验原理 131
10.2材料清单及数据手册 131
10.3硬件连接 134
10.4程序设计 135
10.5调试及实验现象 137
10.6技术小贴士 138
第11章 电机控制 140
11.1实验背景 140
11.2材料清单及数据手册 141
11.2.1材料清单 141
11.2.2步进电机数据手册 142
11.3硬件连接 144
11.4程序设计 145
11.5调试及实验现象 146
11.6拓展实验 146
11.7技术小贴士 148
第12章 蓝牙通信 151
12.1实验背景 151
12.2材料清单及数据手册 152
12.2.1材料清单 152
12.2.2蓝牙模块数据手册 152
12.3硬件连接 153
12.4程序设计 154
12.5调试及实验现象 155
12.6技术小贴士 156
第13章 Wi-Fi无线数据传输 160
13.1实验背景 160
13.2材料清单及数据手册 160
13.2.1材料清单 160
13.2.2 Wi-Fi模块数据手册 161
13.3电路连接及通信初始化 162
13.4程序设计 164
13.5程序调试 164
13.6技术小贴士 164
第14章 ZigBee无线数据传输 167
14.1实验背景 167
14.2材料清单及数据手册 167
14.2.1材料清单 167
14.2.2 XBee/XBee-PRO模块数据手册 168
14.3硬件连接 171
14.4程序设计 173
14.5程序调试 175
14.6技术小贴士 175
第3部分 项目实战 181
第15章 基于Arduino的智慧农业大棚 181
15.1系统概述 181
15.2系统总体设计方案 182
15.3硬件设计 183
15.3.1系统整体硬件连接 183
15.3.2 STC12C5A16S2控制器 183
15.3.3下位机控制外设 183
15.3.4 Arduino传感器网络 188
15.3.5空气温湿度传感器模块 189
15.3.6 CO2浓度传感器模块 189
15.3.7土壤湿度传感器模块 190
15.3.8光照强度传感器模块 191
15.4软件设计 193
15.4.1系统软件流程 193
15.4.2空气温湿度传感器模块 193
15.4.3 CO2浓度传感器模块 196
15.4.4土壤湿度传感器模块 197
15.4.5光照强度传感器模块 198
15.5 PC端软件设计 200
15.6 Android手机客户端软件设计 209
15.7系统调试 225
15.8设计中的问题及解决方法 230
参考文献 231
附录 Arduino实验常见元件清单 232