发表于2024-12-26
※McGrawHill经典口袋书,知识点深入浅出讲解,把书读得很薄,迅速提升Arduino编程能力。
※回顾Arduino程序设计的基础内容,并介绍更多程序设计的高阶功能。
※通过实例展示如何利用少的储存器即可有效工作、使用小功率完成大性能、支持不同类型的串行口、支持USB编程、支持网络编程、数字信号处理DSP等内容。
※75个开源的Sketches示例提供下载使用。
※100余个Arduino程序设计技巧等你实践。
本书从提高Arduino使用效率、数据库打包、硬件融合、USB编程、网络编程、数字信号编程等几个方面,来综合讲解Arduino的晋级应用方法。书中迅速带过Arduino的基础知识,进入能力提升的主题,通过多个实例帮助读者快速提升Arduino编程能力。
Simon Monk博士(英国Preston)拥有控制论和计算机科学学位以及软件工程学博士学位。他做了几年的学术研究,然后回到了产业界,共同创办了移动软件公司Momote Ltd.。他从十来岁起就是一个活跃的电子爱好者,而且是业余电子和开源硬件的全职作家。Monk博士是众多电子书籍的作者,精于开源硬件平台,特别是Arduino和树莓派。
第1章 Arduino编程 1
什么是 Arduino 1
软件安装和IDE 3
Arduino概览 6
Arduino 开发板 8
编程语言 12
修改Blink sketch 12
变量 14
If 15
Loops 16
函数 17
数字量输入 18
数字量输出 20
串口监视器 20
数组和字符串 22
模拟量输入 23
模拟量输出 25
使用库 26
Arduino数据类型 28
Arduino 指令 29
总结 30
第2章 内部机理 31
Arduino发展概况 31
Arduino内部结构 31
AVR微控制器 32
Arduino 和Wiring 35
从sketch到Arduino 38
AVR Studio 41
安装引导程序 43
总结 46
第3章 中断和定时器 47
硬件中断 47
启用和禁用中断 53
定时器中断 53
总结 56
第4章 让Arduino更快 57
Arduino到底有多快? 57
Arduino开发板之间的比较 58
算法加速 59
查找与计算 60
快速I/O 62
模拟量输入的加速 68
总结 69
第5章 低功耗的Arduino 70
Arduino开发板的功耗 70
电流和电池 72
降低时钟频率 73
关闭一些模块 75
休眠 76
输出数字量控制功耗 80
总结 82
第6章 内存 83
Arduino内存 83
减少RAM的使用 84
最小化闪存占用 89
静态与动态内存分配对比 90
字符串 91
EEPROM的使用 95
使用闪存 100
使用SD卡存储数据 102
总结 104
第7章 I2C总线的使用 105
I2C硬件 106
I2C协议 107
Wire库 108
I2C示例 110
总结 116
第8章 1-Wire器件接口 117
1-Wire硬件 117
1-Wire协议 118
OneWire 程序库 118
使用DS18B20 121
总结 122
第9章 SPI器件接口 123
位操作 123
SPI硬件 127
SPI协议 129
SPI库 129
SPI 示例 131
总结 134
第10章 UART串行编程 135
串行硬件 135
串行通信协议 137
串行命令 138
软件串行通信库 140
串行通信示例 141
总结 148
第11章 USB编程 149
键盘和鼠标仿真 149
USB主机编程 152
总结 159
第12章 网络编程 160
网络硬件 160
Ethernet库 163
以太网示例 167
WiFi库 173
WiFi示例 174
总结 175
第13章 数字信号处理 176
数字信号处理介绍 176
读数求均值 177
滤波介绍 179
构建一个简易低通滤波器 180
Arduino Uno 的数字信号处理 181
Arduino Due数字信号处理 183
滤波器代码生成 185
傅里叶变换 188
总结 192
第14章 管理一个进程 193
转变大型系统的编程习惯 193
为什么你不需要线程 194
设置和循环 194
Timer库 197
总结 198
第15章 编写程序库 199
何时编写程序库 199
使用类与方法 200
库示例(TEA5767 Radio) 200
测试库文件 205
发布这个库 205
总结 206
附件A 器件 207
Arduino开发板 207
扩展板 207
器件与模块 208
供应商 208
每一章节涉及Arduino编程的特定主题。除了介绍、回顾Arduino基础知识的第1章外,剩余的章节完全按照你的喜好来进行阅读。
如果你是一个在其它领域有经验的开发者,估计你会喜欢先阅读第14章,然后把Arduino编程放到特定的语义场景中。接下来对每一章进行介绍。
1.第1章“Arduino编程”包含了Arduino程序设计的归纳与总结。对于需要快速掌握Arduino基础知识的人来说,这是入门章节。
2. 在第二章“内部机理”中,我们窥视了Arduino的软件是如何工作的?它来自哪里?
3.第3章“中断和定时器”。 新手常常避开使用中断,其实他们完全不用这样,因为有时采用中断是很方便的,同时所涉及的相关代码也不复杂。虽然中断也有一些缺陷,本章将告诉你自己需要知道什么。
4. 第4章“让Arduino更快”。 Arduino的处理器速度慢、功耗低。所以有时你需要尽可能挖掘它们的潜力。例如,内嵌digitalWrite函数是安全和简单易用的,但其效率低,特别是同时对多个输出进行设置时。在这章里,你将寻求提高性能的方法,同时学习其它技术来编写时效性强的sketche。
5. 第5章“低功耗的Arduino”。当你用电池或太阳电池给Arduino供电时,你需要考虑把功耗降到很低。此外为了优化硬件设计,你也可以通过编写代码来降低Arduino的功耗。
6.第6章“内存”。在本章中,在sketche中,我们探寻尽量小的内存的使用及其优势,以及动态使用内存所带来的风险。
7.第7章“I2C总线的使用”。 Arduino的I2C接口能很容易地实现与模块和器件间的通信,减少所需引脚的数量。这一章阐述了I2C工作原理及其使用方法。
8.第8章“1-Wire器件接口”。本章着眼于1-wire总线器件,例如Dallas家族中非常流行、用于Arduino的温度传感器。你能学习1-wire总线工作原理和使用方法。
9.第9章“SPI器件接口”。 Arduino的另一个接口标准是SPI。本章探索它的工作原理和使用方法。
10. 第10章“UART串行编程”。通过USB或Arduino的Rx和Tx引脚,在外设和其它Arduino之间,串行通信提供了非常重要的数据交换通道。在本章中你可以学习到串行通信的工作原理及其使用方法。
11. 第11章“USB编程”。本章介绍了具有USB接口的Arduino使用的各个方面。你将学习由Arduino Leonardo提供的键盘和鼠标模拟功能。以及允许USB键盘或鼠标连接到内嵌Arduino设备的逆向过程。
12.第12章“网络编程”。 Arduino在物联网中是一个常见的器件。在本章中,你将学习Arduino的互联网编程方法。其主题涉及Wi-Fi和以太网扩展板、web服务的使用以及把Arduino作为迷你web服务器。
13. 第13章“数字信号处理”。Arduino具有初步的信号处理能力。本章讨论了各种技巧,从对来自模拟输入端的信号进行滤波,使用的是软件技术而不是额外的电子部件,到采用傅里叶变换技术,计算一个信号中各种频率的相对大小。
14. 第14章“管理一个进程”。有大型系统编程背景的程序员接触到Arduino时,往往意味着在Arduino中缺乏多线程和并发机制,由于一些缺陷。在这章中,我试着修正和展示如何采用嵌入式系统的单线程模型。
15. 第15章“编写程序库”。 总有一天,考虑到别人能够使用,你将把事情做得确实很好。这是把代码打包生成库函数并将其向全世界发布的时代。本章介绍了它的实现方法。
Arduino编程指南 75个智能硬件程序设计技巧 [Programming Arduino Next Step: Going Further with ] 下载 mobi pdf epub txt 电子书 格式 2024
Arduino编程指南 75个智能硬件程序设计技巧 [Programming Arduino Next Step: Going Further with ] 下载 mobi epub pdf 电子书经典正版实用性高
评分非常好的书 扫盲下 做编辑期开发
评分经典正版实用性高
评分东西不错 很喜欢 多搞活动啊
评分为了应付比赛,临时抱佛脚,有些不错,有些书也就那样了。
评分便宜实惠有用
评分买错了,完全看不懂
评分写的还是非常好的,很全面!!
评分送货很快,很适合,很好很好
Arduino编程指南 75个智能硬件程序设计技巧 [Programming Arduino Next Step: Going Further with ] mobi epub pdf txt 电子书 格式下载 2024