第1章 智能机器人硬件概要 1
1.1 导读和提示 1
1.2 计算机的结构 1
1.3 主机是什么 3
1.4 单片机的概念 6
1.4.1 单片机概念 7
1.4.2 运算器的运算原理 8
1.4.3 运算器中数的表示和特点 9
1.4.4 计算机为什么会处理事物 11
1.4.5 理解单片机接口的几个概念 12
1.5 本章重要内容提示 13
1.6 本章作业 14
第2章 类C,C++语言简介 15
2.1 导读和提示 15
2.2 计算机语言中的数据 15
2.2.1 数学中数据分类与计算机语言中数据类型的比较 15
2.2.2 针对单片机的类C,C++语言给出的数据类型及其说明 16
2.2.3 数据类型的运用 19
2.2.4 Arduino IDE系统C,C++语言数据类型使用举例 20
2.3 运算和程序控制 23
2.3.1 运算 23
2.3.2 程序控制 24
2.3.3 类C,C++语言程序代码的说明(注释)方法 34
2.3.4 Arduino系统C,C++语言的相关说明 35
2.4 典型单片机C,C++语言开发环境程序文本结构 36
2.4.1 MCS 51系列单片机C语言程序文本结构 36
2.4.2 Arduino IDE系统C,C++语言程序文本结构 37
2.4.3 Arduino IDE提供的可使用的标准函数说明 40
2.4.4 Arduino IDE编写的应用程序中变量作用范围 43
2.4.5 系统中存在的对象 46
2.5 本章重要内容提示 46
2.6 本章作业 47
第3章 实验开发环境建立 48
3.1 导读和提示 48
3.2 Windows下Arduino IDE系统建立 48
3.3 硬件环境的建立 51
3.3.1 物理硬件系统环境建立 51
3.3.2 软件虚拟硬件系统环境建立 51
3.3.3 Arduino常用板子的硬件说明 52
3.3.4 Arduino常用板子接线引脚说明 56
3.4 实验硬件建立 56
3.4.1 Proteus实验硬件搭建 57
3.4.2 虚拟实验电路的属性 62
3.4.3 实验现象观察 65
3.5 Arduino IDE系统如何支持新硬件 66
3.5.1 对象是什么 67
3.5.2 串行口对象 67
3.5.3 流(Stream)对象 72
3.5.4 ArduinoIDE系统加入新硬件的方法 74
3.6 观察电路程序运行动态信息 80
3.6.1 善用Arduino板子串行口0 80
3.6.2 Proteus与Arduino IDE系统“串口监视器”联系方法 82
3.6.3 利用Proteus串口虚拟终端监视虚拟电路程序运行情况 86
3.6.4 利用虚拟示波器显示虚拟Arduino单片机板子接线端口输出信号波形 87
3.7 本章重要内容提示 88
3.8 本章作业 88
第4章 输入输出器件的调试 90
4.1 导读和提示 90
4.2 简单输入输出实现 90
4.3 简单传感器的应用 95
4.4 高级传感器和执行器的控制 98
4.4.1 与超声波运用相关的传感器使用 98
4.4.2 PWM信号的输出 105
4.4.3 模拟信号的使用 109
4.4.4 中断编程 116
4.4.5 数码管使用 126
4.4.6 液晶屏使用 132
4.4.7 键盘 135
4.4.8 步进电机控制 141
4.4.9 舵机控制 143
4.4.10 红外测距 146
4.4.11 火焰传感器 147
4.4.12 温度、湿度测量 150
4.4.13 压力测量 155
4.4.14 时钟芯片的使用 156
4.4.15 报警和音乐电路 160
4.5 本章重要内容提示 164
4.6 本章作业 164
第5章 面向对象的系统开发方法 166
5.1 导读和提示 166
5.2 对象和类 166
5.3 Arduino系统“面向对象”程序设计特点 171
5.4 Arduino IDE系统中典型类库源代码分析和使用说明 173
5.4.1 简单I/O类类库 174
5.4.2 与模拟信号相关的更精细处理和控制的类库 191
5.4.3 其他有用类举例 199
5.5 Arduino IDE系统新类库开发 247
5.5.1 一个简单关于按钮的类 248
5.5.2 一个关于亮灯的类 251
5.5.3 再编DHT11传感器使用类 253
5.5.4 新类库开发原则 256
5.6 本章重要内容提示 257
5.7 本章作业 257
第6章 多元素复杂系统的开发和调试 259
6.1 导读和提示 259
6.2 Arduino单片机系统对外连接方式 259
6.3 Arduino应用系统组织开发举例 262
6.3.1 人体感应门 262
6.3.2 电子秤 269
6.3.3 室内温湿计 276
6.3.4 信号频率测量仪 277
6.3.5 特殊气体报警器 279
6.3.6 单线多点测量系统 280
6.3.7 蓝牙系统 285
6.3.8 ZigBee/Xbee系统 287
6.3.9 GSM系统 289
6.3.10 GPS系统 291
6.4 应用Proteus若干问题讨论 293
6.5 本章重要内容提示 295
6.6 本章作业 295
第7章 智能车软硬件设计及问题解决方法 296
7.1 导读和提示 296
7.2 消防智能车系统设计 296
7.2.1 消防智能车模型的构成 297
7.2.2 消防智能车模型的硬件构成 298
7.2.3 消防智能车模型的参考控制程序 298
7.2.4 点评和改进 299
7.3 循迹智能车系统设计 312
7.3.1 循迹智能车模型的构成 312
7.3.2 循迹智能车模型的硬件构成 313
7.3.3 循迹智能车模型的参考控制程序 313
7.3.4 点评和改进 317
7.4 搬运机器人系统设计 318
7.4.1 登峰杯搬运创新挑战机器人设计要求 318
7.4.2 搬运创新挑战机器人的硬件构成 319
7.4.3 搬运创新挑战机器人的参考控制程序 321
7.4.4 点评和改进 327
7.5 Arduino Robot中的设计规划 348
7.5.1 ArduinoRobotMotorBoard.h告诉我们什么 349
7.5.2 基于Arduino Robot系统编程 353
7.6 本章重要内容提示 355
7.7 本章作业 355
第8章 本书相关重大问题详解 356
8.1 导读和提示 356
8.2 怎样才能快速 356
8.2.1 智能机器人构成中的基本技术 357
8.2.2 直接使用数字量和模拟量技术在编程中的体现 358
8.2.3 高级传感器、通信部件在编程中使用 359
8.2.4 类在智能机器人系统设计中的作用 361
8.2.5 作者为读者建议的目标类形式 364
8.2.6 快速掌握智能机器人系统设计的要点 377
8.2.7 本书提供资料汇编 378
8.3 小学生如何使用本书 381
8.4 初中生如何使用本书 383
8.5 高中生如何使用本书 386
8.6 大学生如何使用本书 388
8.7 再论本书中的难点 389
8.8 本章重要内容提示 392
8.9 本章作业 392
参考文献 393