内容简介:内容简介:
● 安装软件环境,给Arduino上电,开始上传项目
● 理解C语言编程基础
● 为项目添加函数、数组和字符串
● 用程序控制Arduino的数字和模拟输入/输出接口
● 使用标准Arduino库中的函数
● 编写将数据存储于EEPROM或闪存中的项目
● 连接显示器,包括与OLED和LCD显示器的连接
● 连接到互联网并将Arduino作为Web服务器
● 开发关于物联网的有趣项目
● 构建自己的库文件并使用面向对象编程方法
新版特色:
● 新增介绍Arduino物联网程序设计的内容
● 介绍新的Arduino型号和软件
作者简介:Simon Monk,模拟控制与计算机科学学士,软件工程博士。从少年时代起,他就是一名活跃的电子玩家,并担任业余电路杂志的兼职作者。Monk博士撰写了20余本有关创客和电子题材的著作,尤其是Arduino和树莓派。你可以在网站http://simonmonk.org上找到他的更多作品,也可以关注他的推特@simonmonk2。
目录:第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