DMUC梦创客社区平台

 找回密码
 立即注册
DMUC梦创客社区平台 DMUC 创客书籍 Arduino 查看内容

Arduino权威指南(第2版) [Arduino Cookbook(2nd Edtion)]

2020-1-30 10:12| 发布者: admin| 查看: 5| 评论: 0

摘要: 本书Arduino Cookbook)是关于Arduino的基础知识和应用的入门手册,从基本概念、常见任务到高级技术,本书应有尽有。前4章介绍简单的入门知识,使你初步认识Arduino并与计算机和其他设备进行通信。5~9章针对输入和输 ...
Arduino权威指南(第2版) [Arduino Cookbook(2nd Edtion)]

出版社: 人民邮电出版社 

ISBN:9787115384447

品牌:人民邮电出版社

包装:平装

外文名称:Arduino Cookbook(2nd Edtion)

开本:16开

出版时间:2015-03-01

页数:607

编辑推荐

本书是美国O'Reilly公司出版的Arduino方面专业手册《Arduino Cookbook》的中文版。
本书由浅入深地介绍了Arduino的基础知识和应用项目,不要求软件和硬件的相关经验。
作者Michael Margolis,是Arduino语言库和核心软件的编写者之一,现任Avaya首席技术总监,曾在索尼、微软、朗讯/贝尔实验室工作,拥有30多年的相关经验,曾著《学Arduino玩转机器人制作》。
译者杨昆云,在美国俄亥俄州立大学获得生物物理学博士学位,随后在加州理工大学做博士后研究,现旅居美国。现任百度贴吧Arduino吧的吧主。

内容简介

  本书Arduino Cookbook)是关于Arduino的基础知识和应用的入门手册,从基本概念、常见任务到高级技术,本书应有尽有。前4章介绍简单的入门知识,使你初步认识Arduino并与计算机和其他设备进行通信。5~9章针对输入和输出进行细致讲解。第10章开始介绍高级编程和技术应用。本书将通过200个常见的实例来帮助你在实践中成为Arduino的使用高手。本书的讲解细致,不需要有软件和硬件的经验,通过这本书,可以利用计算机技术和环境互动找到快速解决硬件、软件问题的方法。有经验的程序员也可以在本书中得到试用底层的AVR资源构建使用Arduino环境的应用。

作者简介

作者Michael Margolis,是Arduino语言库和核心软件的编写者之一,现任Avaya首席技术总监,曾在索尼、微软、朗讯/贝尔实验室工作,拥有30多年的相关经验,曾著《学Arduino玩转机器人制作》。

译者杨昆云,在美国俄亥俄州立大学获得生物物理学博士学位,随后在加州理工大学做博士后研究,现旅居美国。自幼爱好电子制作和程序编写,在Arduino微控制器系统推出之后,积极向中国国内爱好者介绍推广这一易学易用的制作平台,现任百度贴吧Arduino吧的吧主。


精彩书评

名家推荐:

“Michael Margolis编写的这本书给新兴的Arduino社区带来了福音。无论你的学习和工作背景如何,本书都能为你目前正在纠结的项目提供解决方案,并帮助你提升创作的想象力。我想我在工作台上永远离不开这本书了。”

——Arduino Uno顾问团队成员

Mikal Hart


目录

第1章入门…1

1.0 介绍……………………1

1.1 安装集成开发环境(IDE)………………………3

1.2 设置Arduino板………5

1.3 使用集成开发环境(IDE)准备一个Arduino程序………………………7

1.4上传并运行闪烁素描……………………………8

1.5创建并保存程序………9

1.6使用Arduino…………11

第2章让程序为你工作……………15

2.0介绍…………………15

2.1构建一个Arduino程序………………………15

2.2使用简单的原始类型(变量)………………17

2.3使用浮点数…………18

2.4使用一组数值………20

2.5使用Arduino的String功能…………………22

2.6使用C字符串………26

2.7把逗号分隔的文本拆分成组…………………27

2.8把一个数字转换为字符串……………………29

2.9将字符串转换为数字31

2.10将你的代码划分为多个功能块………………34

2.11从函数返回多个值…38

2.12根据条件采取行动…40

2.13重复一个语句序列…42

2.14使用计数器重复执行语句……………………44

2.15跳出循环……………46

2.16基于单个变量进行不同的操作………………47

2.17字符和数量值的比较49

2.18字符串的比较………51

2.19逻辑比较的操作……52

2.20执行位运算…………53

2.21复合运算和赋值……55

第3章使用数学运算符……………56

3.0介绍…………………56

3.1加,减,乘,除……56

3.2值的递增和递减……57

3.3找出两个值相除的余数………………………58

3.4确定绝对值…………59

3.5把一个数约束在一个数值范围内 ……………59

3.6寻找一些值的最小或最大值…………………60

3.7计算一个数的乘方…61

3.8取平方根……………61

3.9浮点数向上和向下取整………………………62

3.10使用三角函数………63

3.11生成随机数…………63

3.12设置和读取位………66

3.13位的移动……………69

3.14在一个int或long值里提取高字节和低字节70

3.15从高字节和低字节组合成一个int或long值71

第4章串口通信……………………74

4.0简介 …………………74

4.1从Arduino发送调试信息到你的计算机……77

4.2从Arduino发送格式化的文本和数值数据…80

4.3在Arduino接收串口数据……………………83

4.4在单个消息中从Arduino发送多个文本字段88

4.5在Arduino上从单个消息中接收多个文本字段………………………93

4.6从Arduino发送二进制数据…………………96

4.7在计算机上接收来自Arduino的二进制数据100

4.8从Processing向Arduino发送二进制值……101

4.9发送多个Arduino引脚的值…………………104

4.10如何移动PC或Mac上的鼠标光标…………108

4.11使用Arduino控制谷歌地球…………………112

4.12在你的计算机中的文件里记录Arduino数据118

4.13在同一时间将数据发送到两个串口设备……121

4.14在同一时间接收来自两个串口设备的数据…124

4.15设置你的计算机上的Processing以发送和接收串口数据…………127

第5章简单数字和模拟输入……129

5.0介绍…………………129

5.1使用一个开关………131

5.2不用外部电阻使用一个开关…………………134

5.3可靠地检测一个开关的闭合…………………136

5.4确定开关被按下多长时间……………………139

5.5读取数字键盘………143

5.6读取模拟值…………146

5.7改变值的范围………147

5.8读取超过六路模拟输入………………………149

5.9显示5V以内的电压…152

5.10响应电压变化………155

5.11测量超过5V的电压(分压器)……………156

第6章获取传感器输入…………158

6.0介绍…………………158

6.1动作检测……………159

6.2光的探测……………161

6.3动作检测(集成被动红外探测器)…………163

6.4距离测量……………164

6.5精确测量距离………168

6.6振动检测……………171

6.7声音检测……………172

6.8温度测量……………175

6.9读取RFID标签………178

6.10跟踪旋转动作………181

6.11跟踪一个以上的旋转编码器的运动…………183

6.12在繁忙的程序里跟踪旋转动作………………185

6.13使用鼠标……………187

6.14从GPS获取位置…191

6.15使用陀螺仪检测旋转195

6.16方向检测……………200

6.17从游戏控制板(PlayStation)获取输入……205

6.18读取加速度…………207

第7章可视输出…………………210

7.0介绍…………………210

7.1连接和使用LED……212

7.2调节LED的亮度……215

7.3驱动高功率LED……216

7.4调整LED的颜色……218

7.5多个LED排序:创建一个条形图……………221

7.6多个LED排序:制作一个追逐序列(霹雳游侠)……………………224

7.7使用复用技术控制一个LED阵列……………225

7.8显示图像上的LED矩阵………………………228

7.9控制LED阵列:Charlieplexing方法…………231

7.10驱动7段LED显示器………………………236

7.11使用复用技术驱动多位7段LED显示器…239

7.12使用MAX7221移位寄存器驱动多位7段LED显示器……………242

7.13使用MAX72xx 移位寄存器控制LED阵列…244

7.14使用PWM扩展芯片(TLC5940)增加模拟输出的数量……………247

7.15使用模拟面板表作为显示器…………………250

第8章物理输出…………………252

8.0简介…………………252

8.1控制舵机的位置……254

8.2使用电位器或传感器控制一个或两个舵机…256

8.3控制连续旋转舵机的速度……………………257

8.4使用计算机指令控制舵机……………………258

8.5驱动无刷电机(使用业余调速器)…………260

8.6控制电磁铁和继电器261

8.7使物体振动…………262

8.8使用晶体管驱动有刷电机……………………264

8.9使用H桥控制有刷电机的旋转方向…………266

8.10控制有刷电机H桥的方向和速度……………269

8.11使用传感器来控制有刷电机的方向和转速(L293 H桥)…………271

8.12驱动双极步进电机…277

8.13驱动双极步进电机(使用EasyDriver板)…279

8.14驱动单极步进电机(ULN2003A)…………283

第9章音频输出…………………285

9.0简介…………………285

9.1音调播放……………286

9.2演奏简单的旋律……288

9.3产生一个以上的同步音………………………290

9.4生成音频音调的同时使LED渐暗……………292

9.5播放一个WAV文件…295

9.6MIDI控制……………298

9.7制作音频合成器……301

第10章遥控外部设备……………303

10.0简介…………………303

10.1对一个红外遥控器做出响应…………………303

10.2解码红外遥控信号…306

10.3模仿遥控器信号……309

10.4控制数码相机………312

10.5通过改装遥控开关来控制交流设备…………314

第11章显示屏的使用……………318

11.0 介绍…………………318

11.1 文字LCD屏的连接和使用…………………318

11.2 格式化文本…………321

11.3 光标和显示的开启和关闭……………………323

11.4 滚动文字……………325

11.5 显示特殊符号………328

11.6 创建自定义字符……331

11.7 显示比单个字符更大的符号…………………333

11.8 显示小于单个字符的像素……………………336

11.9 连接和使用图形LCD显示器………………338

11.10 创建用于图形显示器的位图………………341

11.11 在电视机上显示文本………………………343

第12章时间和日期的使用………348

12.0 介绍…………………348

12.1 创建延时……………348

12.2 使用millis来确定持续时间…………………349

12.3 更精确地测量一个脉冲的持续时间…………353

12.4 把Arduino作为一个时钟来用………………355

12.5 创建一个可以周期性调用函数的闹钟………364

12.6 使用一个实时时钟…367

第13章使用I2C和SPI进行通信………………………372

13.0 简介…………………372

13.1 使用BlinkM模块控制RGB LED……………375

13.2 使用Wii的双节棍加速度计…………………380

13.3 外部实时时钟的接口384

13.4 添加外部EEPROM存储器…………………386

13.5 用数字温度计读取温度………………………390

13.6 只用两条导线驱动4位7段LED显示……394

13.7 集成一个I2C端口扩展器……………………397

13.8 使用SPI驱动多位7段LED显示器………400

13.9 两个或两个以上的Arduino板之间的通信…402

第14章无线通信…………………406

14.0 介绍…………………406

14.1 使用低成本无线模块发送消息………………406

14.2 把Arduino接入ZigBee或802.15.4网络…412

14.3 将消息发送到一个特定的XBee……………417

14.4 在XBee间互传传感器数据…………………420

14.5 激活连接到XBee的执行器…………………425

14.6 使用低成本收发器发送消息…………………429

14.7 与蓝牙设备通讯……434

第15章以太网和网络……………437

15.0 简介…………………437

15.1 以太网扩展板的设置439

15.2 自动获取你的IP地址………………………441

15.3 解析主机名到IP地址(DNS)……………443

15.4 从Web服务器请求数据……………………445

15.5 使用XML从Web服务器请求数据…………451

15.6 把Arduino设置成一个Web服务器………454

15.7 处理进入的Web请求………………………457

15.8 处理针对特定页面的请求……………………460

15.9 使用HTML格式化Web服务器响应………465

15.10 使用表单的网页服务(POST)……………469

15.11 包含大量数据的网页服务…………………472

15.12 发送Twitter消息…480

15.13 发送和接收简单消息(UDP)……………485

15.14 从Internet时间服务器获取时间…………492

15.15 监测Pachube数据馈送……………………498

15.16 将信息发送到Pachube……………………504

第16章库的使用修改和创建……510

16.0 简介…………………510

16.1 使用内置库…………510

16.2 安装第三方库………511

16.3 库的修改……………512

16.4 创建你自己的库……516

16.5 创建一个使用其他库的库……………………521

16.6 为Arduino 1.0版更新第三方库……………527

第17章高级编程和内存操作……529

17.0 介绍…………………529

17.1 了解Arduino程序的构建过程………………530

17.2 判断可用和已用的RAM 量…………………532

17.3 存储和读取程序存储器中的数字值…………534

17.4 存储和检索字符串在程序存储器……………537

17.5 使用#define 和const而不用整数型变量…539

17.6 使用条件编译………540

第18章使用控制器芯片的硬件…543

18.0 介绍…………………543

18.1 在永久性EEPROM存储器中存储数据……546

18.2 使用硬件中断………550

18.3 设置定时器持续时间552

18.4 设置定时器脉冲宽度和持续时间……………554

18.5 创建一个脉冲发生器556

18.6 更改定时器的PWM频率……………………560

18.7 脉冲计数……………562

18.8 更精确的脉冲测量…564

18.9 快速测量模拟值……567

18.10 减少电池消耗……568

18.11 快速设定数字引脚572

18.12 使用编程器上传程序………………………576

18.13 更换Arduino的Bootloader………………577

18.14 对Uno重新编程来模拟原生的USB设备577

附件A电子元件…………………581

附件B使用原理图和数据手册…585

附件C电路的构建和连接………591

附件D软件问题排错诀窍………593

附件E硬件问题排错诀窍………596

附件F数字和模拟引脚……………598

附件GASCII和扩展字符集……601

附录H?


内页速览


鲜花

握手

雷人

路过

鸡蛋
发表评论

最新评论

QQ|Archiver|小黑屋|DMUC

GMT+8, 2020-2-1 19:21 , Processed in 0.128937 second(s), 20 queries .

常州市力量网络科技有限公司 版权所有  苏ICP备15018635号-7

Powered by Discuz! X3.4  Copyright © 2001-2020, Tencent Cloud.

返回顶部