当前位置:主页 > 计算机电子书 > Web前端 > Arduino下载
Arduino技术指南

Arduino技术指南 PDF 全书完整版

  • 更新:2021-12-29
  • 大小:26 MB
  • 类别:Arduino
  • 作者:John、M.、Hughes
  • 出版:人民邮电出版社
  • 格式:PDF

  • 资源介绍
  • 相关推荐

内容简介

本书主要讲解了Arduino开发板的物理特性与接口功能,Arduino使用的各种AVR微控制器,Arduino特有的编程环境,各种扩展板,可与Arduino一起工作的传感器、继电器模块、小键盘以及其他附加组件,从零开始创建自定义扩展板的步骤,介绍各种分析设计问题、定义实体与可测试需求的方法,确保开发成功。

目录

  • 前言xv
  • 第1章Arduino家族1
  • 1.1Arduino简史1
  • 1.2Arduino设备类型2
  • 1.3Arduino实物展示3
  • 1.4Arduino兼容设备6
  • 1.4.1硬件兼容设备6
  • 1.4.2软件兼容设备7
  • 1.5Arduino命名约定8
  • 1.6使用Arduino可以实现的目的9
  • 1.7更多信息11
  • 第2章AVR微控制器12
  • 2.1背景12
  • 2.2内部架构13
  • 2.3内部存储器16
  • 2.4外围功能16
  • 2.4.1控制寄存器16
  • 2.4.2数字I/O端口17
  • 2.4.38位定时器/计数器18
  • 2.4.416位定时器/计数器19
  • 2.4.5定时器/计数器预分频器19
  • 2.5模拟比较器19
  • 2.6模数转换器20
  • 2.7串行I/O.21
  • 2.7.1USART22
  • 2.7.2SPI22
  • 2.7.3TWI23
  • 2.8中断24
  • 2.9看门狗定时器26
  • 2.10电气特性26
  • 2.11更多信息27
  • 第3章Arduino专用AVR微控制器28
  • 3.1ATmega168/32829
  • 3.1.1内存29
  • 3.1.2特性29
  • 3.1.3封装30
  • 3.1.4端口31
  • 3.1.5引脚电路31
  • 3.1.6模拟比较器输入31
  • 3.1.7模拟输入32
  • 3.1.8串行接口32
  • 3.1.9定时器/时钟I/O33
  • 3.1.10外部中断33
  • 3.1.11Arduino引脚分配34
  • 3.1.12基本电气特性35
  • 3.2ATmega1280/ATmega256035
  • 3.2.1内存35
  • 3.2.2特性37
  • 3.2.3封装37
  • 3.2.4端口37
  • 3.2.5引脚功能38
  • 3.2.6模拟比较器输入38
  • 3.2.7模拟输入39
  • 3.2.8串行接口39
  • 3.2.9定时器/时钟I/O40
  • 3.2.10外部中断41
  • 3.2.11Arduino引脚分配41
  • 3.2.12电气特性44
  • 3.3ATmega32U444
  • 3.3.1内存44
  • 3.3.2特性45
  • 3.3.3封装46
  • 3.3.4端口46
  • 3.3.5引脚功能47
  • 3.3.6模拟比较器输入47
  • 3.3.7模拟输入47
  • 3.3.8串行接口48
  • 3.3.9定时器/时钟I/O49
  • 3.3.10外部中断50
  • 3.3.11USB2.0接口51
  • 3.3.12电气特性52
  • 3.3.13Arduino引脚分配52
  • 3.4熔丝位53
  • 3.5更多信息55
  • 第4章Arduino技术细节56
  • 4.1Arduino特性与功能.56
  • 4.2ArduinoUSB接口57
  • 4.3Arduino物理大小.59
  • 4.3.1全尺寸基本ArduinoPCB类型.60
  • 4.3.2Mega类型的ArduinoPCB61
  • 4.3.3小型ArduinoPCB62
  • 4.3.4特殊用途PCB类型65
  • 4.4Arduino引脚布局.66
  • 4.4.1Arduino基线引脚布局66
  • 4.4.2扩展基线引脚布局67
  • 4.4.3Mega引脚布局72
  • 4.4.4非标准布局74
  • 4.5更多信息78
  • 第5章对Arduino与AVR微控制器编程79
  • 5.1微控制器交叉编译80
  • 5.2BootLoader81
  • 5.3ArduinoIDE环境83
  • 5.3.1安装ArduinoIDE84
  • 5.3.2配置ArduinoIDE85
  • 5.4使用ArduinoIDE进行交叉编译86
  • 5.4.1Arduino可执行映像89
  • 5.4.2Arduino软件创建过程89
  • 5.4.3程序标签卡90
  • 5.4.4Arduino软件架构91
  • 5.4.5运行时支持:main()函数92
  • 5.4.6程序示例94
  • 5.4.7常量97
  • 5.4.8全局变量97
  • 5.5库98
  • 5.5.1在Arduino程序中使用库98
  • 5.5.2将库添加到ArduinoIDE101
  • 5.5.3创建自定义库103
  • 5.6Arduino源代码103
  • 第6章不使用ArduinoIDE编程105
  • 6.1IDE替换方案105
  • 6.1.1PlatformIO105
  • 6.1.2Ino107
  • 6.2AVR工具链108
  • 6.2.1安装工具链111
  • 6.2.2make112
  • 6.2.3avr-gcc113
  • 6.2.4binutils113
  • 6.2.5avr-libc116
  • 6.3从零开始构建C或C++程序118
  • 6.3.1使用avr-gcc或avr-g++进行编译118
  • 6.3.2多个源文件与make程序118
  • 6.4AVR汇编语言120
  • 6.4.1AVR编程模型121
  • 6.4.2创建AVR汇编语言程序123
  • 6.4.3AVR汇编语言资源125
  • 6.5上传AVR可执行代码126
  • 6.5.1系统内编程126
  • 6.5.2使用Bootloader编程127
  • 6.5.3不使用Bootloader上传127
  • 6.5.4JTAG129
  • 6.5.5AVRDUDE129
  • 6.5.6将Arduino用作ISP131
  • 6.5.7Bootloader运作131
  • 6.5.8更换Bootloader133
  • 6.6小结133
  • 第7章Arduino库134
  • 7.1库组件134
  • 7.1.1EEPROM136
  • 7.1.2Ethernet138
  • 7.1.3Firmata144
  • 7.1.4GSM148
  • 7.1.5LiquidCrystal157
  • 7.1.6SD160
  • 7.1.7Servo163
  • 7.1.8SPI164
  • 7.1.9SoftwareSerial165
  • 7.1.10Stepper167
  • 7.1.11TFT167
  • 7.1.12Wi-Fi170
  • 7.1.13Wi-Fi类172
  • 7.1.14IPAddress类172
  • 7.1.15Server类172
  • 7.1.16Client类173
  • 7.1.17UDP类173
  • 7.1.18Wire174
  • 7.1.19Esplora176
  • 7.2第三方库179
  • 第8章扩展板182
  • 8.1扩展板的电气特性183
  • 8.2扩展板的物理特性184
  • 8.3堆叠扩展板186
  • 8.4常用Arduino扩展板186
  • 8.4.1输入/输出187
  • 8.4.2I/O扩展板187
  • 8.4.3I/O拓展板191
  • 8.4.4继电器扩展板194
  • 8.4.5信号路由扩展板196
  • 8.4.6存储器199
  • 8.4.7通信201
  • 8.4.8串行I/O与MIDI201
  • 8.4.9Ethernet202
  • 8.4.10蓝牙204
  • 8.4.11USB205
  • 8.4.12ZigBee207
  • 8.4.13CAN208
  • 8.4.14原型211
  • 8.4.15制作自定义原型扩展板213
  • 8.4.16运动控制214
  • 8.4.17DC与步进电机控制214
  • 8.4.18PWM与舵机控制216
  • 8.4.19显示器217
  • 8.4.20仪表扩展板223
  • 8.4.21适配器扩展板225
  • 8.4.22混杂扩展板226
  • 8.5非常见Arduino扩展板230
  • 8.6资源231
  • 第9章模块与I/O组件233
  • 9.1模块234
  • 9.1.1物理外形235
  • 9.1.2接口235
  • 9.1.3模块来源238
  • 9.1.4模块说明238
  • 9.2Grove模块260
  • 9.3传感器与模块介绍261
  • 9.4传感器262
  • 9.4.1温度、湿度、压力传感器263
  • 9.4.2倾斜传感器267
  • 9.4.3声音传感器268
  • 9.4.4光线传感器269
  • 9.4.5磁场传感器272
  • 9.4.6振动与敲击传感器273
  • 9.4.7运动传感器274
  • 9.4.8接触与位置传感器275
  • 9.4.9距离传感器278
  • 9.5通信279
  • 9.5.1APC220无线模块279
  • 9.5.2315/433MHzRF模块280
  • 9.5.3ESP8266收发器.280
  • 9.6输出设备与元件281
  • 9.6.1光源281
  • 9.6.2继电器、电机与舵机285
  • 9.6.3模拟信号输出287
  • 9.7用户输入288
  • 9.7.1键盘288
  • 9.7.2摇杆289
  • 9.7.3电位器与旋转编码器289
  • 9.8用户输出289
  • 9.8.1文本显示器290
  • 9.8.2图形显示器291
  • 9.9支持功能291
  • 9.9.1时钟292
  • 9.9.2定时器293
  • 9.10连接294
  • 9.10.1使用裸露跳线294
  • 9.10.2模块连接系统294
  • 9.10.3自己动手制作连接器295
  • 9.10.4选择连接方法297
  • 9.11供应商资源297
  • 9.12小结297
  • 第10章自己动手制作元件299
  • 10.1准备工作301
  • 10.2制作扩展板305
  • 10.2.1物理考虑306
  • 10.2.2堆叠扩展板307
  • 10.2.3电气考虑308
  • 10.3制作GreenShield扩展板309
  • 10.3.1目标309
  • 10.3.2定义与规划309
  • 10.3.3设计310
  • 10.3.4制作原型316
  • 10.3.5最终软件322
  • 10.3.6装配328
  • 10.3.7最终验收测试332
  • 10.3.8运行333
  • 10.3.9后续步骤334
  • 10.4制作与Arduino兼容的PCB334
  • 10.5Switchinator335
  • 10.5.1定义与规划335
  • 10.5.2设计336
  • 10.5.3原型347
  • 10.5.4软件350
  • 10.5.5制造353
  • 10.5.6验收检测356
  • 10.5.7后续步骤356
  • 10.6资源356
  • 第11章项目:可编程信号发生器358
  • 11.1项目目标360
  • 11.2定义与规划360
  • 11.3设计362
  • 11.3.1功能362
  • 11.3.2外壳363
  • 11.3.3电路图364
  • 11.4搭建原型366
  • 11.4.1控制输入与模式367
  • 11.4.2显示输出368
  • 11.4.3DDS模块369
  • 11.5软件370
  • 11.5.1源代码组织371
  • 11.5.2软件描述372
  • 11.5.3DDS库378
  • 11.5.4测试379
  • 11.6最终组装382
  • 11.6.1上拉电阻阵列382
  • 11.6.2输入保护383
  • 11.6.3机箱外壳384
  • 11.6.4DC电源.386
  • 11.7最终测试与结束386
  • 11.8削减开支387
  • 11.9成本明细388
  • 11.10资源389
  • 第12章项目:智能调温器390
  • 12.1背景390
  • 12.1.1HVAC概述391
  • 12.1.2温度控制基础392
  • 12.1.3智能温度控制394
  • 12.2项目目标395
  • 12.3定义与规划395
  • 12.4设计396
  • 12.4.1功能396
  • 12.4.2外壳397
  • 12.4.3电路图399
  • 12.4.4软件399
  • 12.4.5用户输入/输出402
  • 12.4.6控制输出406
  • 12.5原型406
  • 12.5.1DHT22传感器407
  • 12.5.2旋转编码器408
  • 12.5.3实时时钟模块409
  • 12.5.4LCD扩展板410
  • 12.6软件410
  • 12.6.1源代码组织410
  • 12.6.2软件描述410
  • 12.6.3测试413
  • 12.7最终版本413
  • 12.7.1组装414
  • 12.7.2测试与运行416
  • 12.8成本明细417
  • 12.9后续步骤417
  • 12.10资源418
  • 第13章模型火箭发射器:设计研究419
  • 13.1概览419
  • 13.2设计周期420
  • 13.3目标421
  • 13.4选择与定义功能需求423
  • 13.5进行初步设计426
  • 13.5.1设计可行性429
  • 13.5.2初始元件列表432
  • 13.6原型432
  • 13.7最终设计433
  • 13.7.1电气特征433
  • 13.7.2物理外形438
  • 13.7.3软件440
  • 13.7.4测试与运行442
  • 13.8成本分析443
  • 附录A工具与配件444
  • 附录BAVRATmega控制寄存器455
  • 附录CArduino与兼容产品厂商477
  • 附录D推荐阅读482
  • 附录EArduino与AVR软件开发工具484
  • 关于作者487

资源下载

资源下载地址1:https://pan.baidu.com/s/1jabBh7nbGDvSelolUlHjZg

相关资源

网友留言