展开全部

主编推荐语

一本示例丰富的树莓派开发实战指南。

内容简介

本书是对树莓派开发的内容进行全面升级之后的第3版,囊括丰富的实践示例,详细讲解树莓派的配置与管理、网络连接、操作系统及软件,以及使用Python进行树莓派开发的各项技巧,包括有关Python编程的基础知识、列表与字典、Python高级特性。

同时,本书还涉及机器视觉、硬件基础、控制硬件、电机、数字输入、传感器、显示设备、音频设备、物联网、家庭自动化、Arduino等内容。

目录

  • 版权信息
  • O'Reilly Media, Inc. 介绍
  • 内容提要
  • 资源与支持
  • 第3版前言
  • 第1章 配置与管理
  • 1.0 引言
  • 1.1 选择树莓派型号
  • 1.1.1 面临的问题
  • 1.1.2 解决方案
  • 1.1.3 B型树莓派4
  • 1.1.4 进一步探讨
  • 1.1.5 提示与建议
  • 1.2 装配系统
  • 1.2.1 面临的问题
  • 1.2.2 解决方案
  • 1.2.3 进一步探讨
  • 1.2.4 提示与建议
  • 1.3 封装树莓派
  • 1.3.1 面临的问题
  • 1.3.2 解决方案
  • 1.3.3 进一步探讨
  • 1.3.4 提示与建议
  • 1.4 选择电源
  • 1.4.1 面临的问题
  • 1.4.2 解决方案
  • 1.4.3 进一步探讨
  • 1.4.4 提示与建议
  • 1.5 选择操作系统
  • 1.5.1 面临的问题
  • 1.5.2 解决方案
  • 1.5.3 进一步探讨
  • 1.5.4 提示与建议
  • 1.6 通过NOOBS刷写microSD卡
  • 1.6.1 面临的问题
  • 1.6.2 解决方案
  • 1.6.3 进一步探讨
  • 1.6.4 提示与建议
  • 1.7 在不借助NOOBS的情况下安装操作系统
  • 1.7.1 面临的问题
  • 1.7.2 解决方案
  • 1.7.3 进一步探讨
  • 1.7.4 提示与建议
  • 1.8 使用PiBakery配置和刷写SD卡
  • 1.8.1 面临的问题
  • 1.8.2 解决方案
  • 1.8.3 进一步探讨
  • 1.8.4 提示与建议
  • 1.9 使用PiBakery配置headless模式的树莓派
  • 1.9.1 面临的问题
  • 1.9.2 解决方案
  • 1.9.3 进一步探讨
  • 1.9.4 提示与建议
  • 1.10 从真正的硬盘或U盘启动
  • 1.10.1 面临的问题
  • 1.10.2 解决方案
  • 1.10.3 进一步探讨
  • 1.10.4 提示与建议
  • 1.11 连接DVI或VGA显示器
  • 1.11.1 面临的问题
  • 1.11.2 解决方案
  • 1.11.3 进一步探讨
  • 1.11.4 提示与建议
  • 1.12 使用复合视频显示器/电视
  • 1.12.1 面临的问题
  • 1.12.2 解决方案
  • 1.12.3 进一步探讨
  • 1.12.4 提示与建议
  • 1.13 调整显示器中的图像尺寸
  • 1.13.1 面临的问题
  • 1.13.2 解决方案
  • 1.13.3 进一步探讨
  • 1.13.4 提示与建议
  • 1.14 优化性能
  • 1.14.1 面临的问题
  • 1.14.2 解决方案
  • 1.14.3 进一步探讨
  • 1.14.4 提示与建议
  • 1.15 修改密码
  • 1.15.1 面临的问题
  • 1.15.2 解决方案
  • 1.15.3 进一步探讨
  • 1.15.4 提示与建议
  • 1.16 关闭树莓派
  • 1.16.1 面临的问题
  • 1.16.2 解决方案
  • 1.16.3 进一步探讨
  • 1.16.4 提示与建议
  • 1.17 为树莓派安装摄像头模块
  • 1.17.1 面临的问题
  • 1.17.2 解决方案
  • 1.17.3 进一步探讨
  • 1.17.4 提示与建议
  • 1.18 使用蓝牙设备
  • 1.18.1 面临的问题
  • 1.18.2 解决方案
  • 1.18.3 进一步探讨
  • 1.18.4 提示与建议
  • 第2章 网络连接
  • 2.0 引言
  • 2.1 连接有线网络
  • 2.1.1 面临的问题
  • 2.1.2 解决方案
  • 2.1.3 进一步探讨
  • 2.1.4 提示与建议
  • 2.2 查看自己的IP地址
  • 2.2.1 面临的问题
  • 2.2.2 解决方案
  • 2.2.3 进一步探讨
  • 2.2.4 提示与建议
  • 2.3 配置静态IP地址
  • 2.3.1 面临的问题
  • 2.3.2 解决方案
  • 2.3.3 进一步探讨
  • 2.3.4 提示与建议
  • 2.4 为树莓派配置网络名称
  • 2.4.1 面临的问题
  • 2.4.2 解决方案
  • 2.4.3 进一步探讨
  • 2.4.4 提示与建议
  • 2.5 配置无线网络连接
  • 2.5.1 面临的问题
  • 2.5.2 解决方案
  • 2.5.3 进一步探讨
  • 2.5.4 提示与建议
  • 2.6 使用控制台线联网
  • 2.6.1 面临的问题
  • 2.6.2 解决方案
  • 2.6.3 进一步探讨
  • 2.6.4 提示与建议
  • 2.7 利用SSH远程控制树莓派
  • 2.7.1 面临的问题
  • 2.7.2 解决方案
  • 2.7.3 进一步探讨
  • 2.7.4 提示与建议
  • 2.8 利用VNC远程控制树莓派
  • 2.8.1 面临的问题
  • 2.8.2 解决方案
  • 2.8.3 进一步探讨
  • 2.8.4 提示与建议
  • 2.9 利用RDP远程控制树莓派
  • 2.9.1 面临的问题
  • 2.9.2 解决方案
  • 2.9.3 进一步探讨
  • 2.9.4 提示与建议
  • 2.10 在Mac网络中实现文件共享
  • 2.10.1 面临的问题
  • 2.10.2 解决方案
  • 2.10.3 进一步探讨
  • 2.10.4 提示与建议
  • 2.11 将树莓派用作网络附接存储系统
  • 2.11.1 面临的问题
  • 2.11.2 解决方案
  • 2.11.3 进一步探讨
  • 2.11.4 提示与建议
  • 2.12 网络打印
  • 2.12.1 面临的问题
  • 2.12.2 解决方案
  • 2.12.3 进一步探讨
  • 2.12.4 提示与建议
  • 第3章 操作系统
  • 3.0 引言
  • 3.1 通过图形界面处理文件
  • 3.1.1 面临的问题
  • 3.1.2 解决方案
  • 3.1.3 进一步探讨
  • 3.1.4 提示与建议
  • 3.2 将文件复制到U盘中
  • 3.2.1 面临的问题
  • 3.2.2 解决方案
  • 3.2.3 进一步探讨
  • 3.2.4 提示与建议
  • 3.3 启动一个终端会话
  • 3.3.1 面临的问题
  • 3.3.2 解决方案
  • 3.3.3 进一步探讨
  • 3.3.4 提示与建议
  • 3.4 利用终端浏览文件系统
  • 3.4.1 面临的问题
  • 3.4.2 解决方案
  • 3.4.3 进一步探讨
  • 3.4.4 提示与建议
  • 3.5 复制文件或文件夹
  • 3.5.1 面临的问题
  • 3.5.2 解决方案
  • 3.5.3 进一步探讨
  • 3.5.4 提示与建议
  • 3.6 重命名文件和文件夹
  • 3.6.1 面临的问题
  • 3.6.2 解决方案
  • 3.6.3 进一步探讨
  • 3.6.4 提示与建议
  • 3.7 编辑文件
  • 3.7.1 面临的问题
  • 3.7.2 解决方案
  • 3.7.3 进一步探讨
  • 3.7.4 提示与建议
  • 3.8 查看文件内容
  • 3.8.1 面临的问题
  • 3.8.2 解决方案
  • 3.8.3 进一步探讨
  • 3.8.4 提示与建议
  • 3.9 在不借助编辑器的情况下创建文件
  • 3.9.1 面临的问题
  • 3.9.2 解决方案
  • 3.9.3 进一步探讨
  • 3.9.4 提示与建议
  • 3.10 创建目录
  • 3.10.1 面临的问题
  • 3.10.2 解决方案
  • 3.10.3 进一步探讨
  • 3.10.4 提示与建议
  • 3.11 删除文件或目录
  • 3.11.1 面临的问题
  • 3.11.2 解决方案
  • 3.11.3 进一步探讨
  • 3.11.4 提示与建议
  • 3.12 以超级用户权限执行任务
  • 3.12.1 面临的问题
  • 3.12.2 解决方案
  • 3.12.3 进一步探讨
  • 3.12.4 提示与建议
  • 3.13 理解文件权限
  • 3.13.1 面临的问题
  • 3.13.2 解决方案
  • 3.13.3 进一步探讨
  • 3.13.4 提示与建议
  • 3.14 修改文件的权限
  • 3.14.1 面临的问题
  • 3.14.2 解决方案
  • 3.14.3 进一步探讨
  • 3.14.4 提示与建议
  • 3.15 修改文件的属主
  • 3.15.1 面临的问题
  • 3.15.2 解决方案
  • 3.15.3 进一步探讨
  • 3.15.4 提示与建议
  • 3.16 屏幕截图
  • 3.16.1 面临的问题
  • 3.16.2 解决方案
  • 3.16.3 进一步探讨
  • 3.16.4 提示与建议
  • 3.17 利用apt-get安装软件
  • 3.17.1 面临的问题
  • 3.17.2 解决方案
  • 3.17.3 进一步探讨
  • 3.17.4 提示与建议
  • 3.18 删除利用apt-get安装的软件
  • 3.18.1 面临的问题
  • 3.18.2 解决方案
  • 3.18.3 进一步探讨
  • 3.18.4 提示与建议
  • 3.19 利用Pip安装Python库
  • 3.19.1 面临的问题
  • 3.19.2 解决方案
  • 3.19.3 进一步探讨
  • 3.19.4 提示与建议
  • 3.20 通过命令行获取文件
  • 3.20.1 面临的问题
  • 3.20.2 解决方案
  • 3.20.3 进一步探讨
  • 3.20.4 提示与建议
  • 3.21 利用Git获取源代码
  • 3.21.1 面临的问题
  • 3.21.2 解决方案
  • 3.21.3 进一步探讨
  • 3.21.4 提示与建议
  • 3.22 获取本书的随附代码
  • 3.22.1 面临的问题
  • 3.22.2 解决方案
  • 3.22.3 进一步探讨
  • 3.22.4 提示与建议
  • 3.23 在系统启动时自动运行程序或脚本
  • 3.23.1 面临的问题
  • 3.23.2 解决方案
  • 3.23.3 进一步探讨
  • 3.23.4 提示与建议
  • 3.24 让程序或脚本作为服务自动运行
  • 3.24.1 面临的问题
  • 3.24.2 解决方案
  • 3.24.3 进一步探讨
  • 3.24.4 提示与建议
  • 3.25 定期自动运行程序或脚本
  • 3.25.1 面临的问题
  • 3.25.2 解决方案
  • 3.25.3 进一步探讨
  • 3.25.4 提示与建议
  • 3.26 搜索功能
  • 3.26.1 面临的问题
  • 3.26.2 解决方案
  • 3.26.3 进一步探讨
  • 3.26.4 提示与建议
  • 3.27 使用命令行历史记录功能
  • 3.27.1 面临的问题
  • 3.27.2 解决方案
  • 3.27.3 进一步探讨
  • 3.27.4 提示与建议
  • 3.28 监视处理器活动
  • 3.28.1 面临的问题
  • 3.28.2 解决方案
  • 3.28.3 进一步探讨
  • 3.28.4 提示与建议
  • 3.29 文件压缩
  • 3.29.1 面临的问题
  • 3.29.2 解决方案
  • 3.29.3 进一步探讨
  • 3.29.4 提示与建议
  • 3.30 列出已连接的USB设备
  • 3.30.1 面临的问题
  • 3.30.2 解决方案
  • 3.30.3 进一步探讨
  • 3.30.4 提示与建议
  • 3.31 将输出从命令行重定向到文件
  • 3.31.1 面临的问题
  • 3.31.2 解决方案
  • 3.31.3 进一步探讨
  • 3.31.4 提示与建议
  • 3.32 连接文件
  • 3.32.1 面临的问题
  • 3.32.2 解决方案
  • 3.32.3 进一步探讨
  • 3.32.4 提示与建议
  • 3.33 使用管道
  • 3.33.1 面临的问题
  • 3.33.2 解决方案
  • 3.33.3 进一步探讨
  • 3.33.4 提示与建议
  • 3.34 不将输出结果显示到终端
  • 3.34.1 面临的问题
  • 3.34.2 解决方案
  • 3.34.3 进一步探讨
  • 3.34.4 提示与建议
  • 3.35 在后台运行程序
  • 3.35.1 面临的问题
  • 3.35.2 解决方案
  • 3.35.3 进一步探讨
  • 3.35.4 提示与建议
  • 3.36 创建命令别名
  • 3.36.1 面临的问题
  • 3.36.2 解决方案
  • 3.36.3 进一步探讨
  • 3.36.4 提示与建议
  • 3.37 设置日期和时间
  • 3.37.1 面临的问题
  • 3.37.2 解决方案
  • 3.37.3 进一步探讨
  • 3.37.4 提示与建议
  • 3.38 查看SD卡剩余存储空间
  • 3.38.1 面临的问题
  • 3.38.2 解决方案
  • 3.38.3 进一步探讨
  • 3.38.4 提示与建议
  • 3.39 检查操作系统版本
  • 3.39.1 面临的问题
  • 3.39.2 解决方案
  • 3.39.3 进一步探讨
  • 3.39.4 提示与建议
  • 3.40 更新Raspbian操作系统
  • 3.40.1 面临的问题
  • 3.40.2 解决方案
  • 3.40.3 进一步探讨
  • 3.40.4 提示与建议
  • 第4章 软件
  • 4.0 引言
  • 4.1 搭建媒体中心
  • 4.1.1 面临的问题
  • 4.1.2 解决方案
  • 4.1.3 进一步探讨
  • 4.1.4 提示与建议
  • 4.2 安装办公软件
  • 4.2.1 面临的问题
  • 4.2.2 解决方案
  • 4.2.3 进一步探讨
  • 4.2.4 提示与建议
  • 4.3 打造网络摄像头服务器
  • 4.3.1 面临的问题
  • 4.3.2 解决方案
  • 4.3.3 进一步探讨
  • 4.3.4 提示与建议
  • 4.4 运行老式游戏控制台模拟器
  • 4.4.1 面临的问题
  • 4.4.2 解决方案
  • 4.4.3 进一步探讨
  • 4.4.4 提示与建议
  • 4.5 运行树莓派版Minecraft
  • 4.5.1 面临的问题
  • 4.5.2 解决方案
  • 4.5.3 进一步探讨
  • 4.5.4 提示与建议
  • 4.6 树莓派无线电发射器
  • 4.6.1 面临的问题
  • 4.6.2 解决方案
  • 4.6.3 进一步探讨
  • 4.6.4 提示与建议
  • 4.7 编辑位图
  • 4.7.1 面临的问题
  • 4.7.2 解决方案
  • 4.7.3 进一步探讨
  • 4.7.4 提示与建议
  • 4.8 编辑矢量图
  • 4.8.1 面临的问题
  • 4.8.2 解决方案
  • 4.8.3 进一步探讨
  • 4.8.4 提示与建议
  • 4.9 互联网广播
  • 4.9.1 面临的问题
  • 4.9.2 解决方案
  • 4.9.3 进一步探讨
  • 4.9.4 提示与建议
  • 第5章 Python入门
  • 5.0 引言
  • 5.1 在Python 2和Python 3之间做出选择
  • 5.1.1 面临的问题
  • 5.1.2 解决方案
  • 5.1.3 进一步探讨
  • 5.1.4 提示与建议
  • 5.2 使用Mu编辑Python程序
  • 5.2.1 面临的问题
  • 5.2.2 解决方案
  • 5.2.3 进一步探讨
  • 5.2.4 提示与建议
  • 5.3 使用Python控制台
  • 5.3.1 面临的问题
  • 5.3.2 解决方案
  • 5.3.3 进一步探讨
  • 5.3.4 提示与建议
  • 5.4 利用终端运行Python程序
  • 5.4.1 面临的问题
  • 5.4.2 解决方案
  • 5.4.3 进一步探讨
  • 5.4.4 提示与建议
  • 5.5 为值(变量)命名
  • 5.5.1 面临的问题
  • 5.5.2 解决方案
  • 5.5.3 进一步探讨
  • 5.5.4 提示与建议
  • 5.6 显示输出结果
  • 5.6.1 面临的问题
  • 5.6.2 解决方案
  • 5.6.3 进一步探讨
  • 5.6.4 提示与建议
  • 5.7 读取用户的输入
  • 5.7.1 面临的问题
  • 5.7.2 解决方案
  • 5.7.3 进一步探讨
  • 5.7.4 提示与建议
  • 5.8 算术运算
  • 5.8.1 面临的问题
  • 5.8.2 解决方案
  • 5.8.3 进一步探讨
  • 5.8.4 提示与建议
  • 5.9 创建字符串
  • 5.9.1 面临的问题
  • 5.9.2 解决方案
  • 5.9.3 进一步探讨
  • 5.9.4 提示与建议
  • 5.10 连接(合并)字符串
  • 5.10.1 面临的问题
  • 5.10.2 解决方案
  • 5.10.3 进一步探讨
  • 5.10.4 提示与建议
  • 5.11 将数字转换为字符串
  • 5.11.1 面临的问题
  • 5.11.2 解决方案
  • 5.11.3 进一步探讨
  • 5.11.4 提示与建议
  • 5.12 将字符串转换为数字
  • 5.12.1 面临的问题
  • 5.12.2 解决方案
  • 5.12.3 进一步探讨
  • 5.12.4 提示与建议
  • 5.13 确定字符串的长度
  • 5.13.1 面临的问题
  • 5.13.2 解决方案
  • 5.13.3 进一步探讨
  • 5.13.4 提示与建议
  • 5.14 确定某字符串在另一个字符串中的位置
  • 5.14.1 面临的问题
  • 5.14.2 解决方案
  • 5.14.3 进一步探讨
  • 5.14.4 提示与建议
  • 5.15 截取部分字符串
  • 5.15.1 面临的问题
  • 5.15.2 解决方案
  • 5.15.3 进一步探讨
  • 5.15.4 提示与建议
  • 5.16 使用字符串替换另一个字符串中的内容
  • 5.16.1 面临的问题
  • 5.16.2 解决方案
  • 5.16.3 进一步探讨
  • 5.16.4 提示与建议
  • 5.17 字符串的大小写转换
  • 5.17.1 面临的问题
  • 5.17.2 解决方案
  • 5.17.3 进一步探讨
  • 5.17.4 提示与建议
  • 5.18 根据条件运行命令
  • 5.18.1 面临的问题
  • 5.18.2 解决方案
  • 5.18.3 进一步探讨
  • 5.18.4 提示与建议
  • 5.19 值的比较
  • 5.19.1 面临的问题
  • 5.19.2 解决方案
  • 5.19.3 进一步探讨
  • 5.19.4 提示与建议
  • 5.20 逻辑运算符
  • 5.20.1 面临的问题
  • 5.20.2 解决方案
  • 5.20.3 进一步探讨
  • 5.20.4 提示与建议
  • 5.21 将指令重复执行特定次数
  • 5.21.1 面临的问题
  • 5.21.2 解决方案
  • 5.21.3 进一步探讨
  • 5.21.4 提示与建议
  • 5.22 重复执行指令直到特定条件改变为止
  • 5.22.1 面临的问题
  • 5.22.2 解决方案
  • 5.22.3 进一步探讨
  • 5.22.4 提示与建议
  • 5.23 跳出循环语句
  • 5.23.1 面临的问题
  • 5.23.2 解决方案
  • 5.23.3 进一步探讨
  • 5.23.4 提示与建议
  • 5.24 定义Python函数
  • 5.24.1 面临的问题
  • 5.24.2 解决方案
  • 5.24.3 进一步探讨
  • 5.24.4 提示与建议
  • 第6章 Python中的列表与字典
  • 6.0 引言
  • 6.1 创建列表
  • 6.1.1 面临的问题
  • 6.1.2 解决方案
  • 6.1.3 进一步探讨
  • 6.1.4 提示与建议
  • 6.2 访问列表元素
  • 6.2.1 面临的问题
  • 6.2.2 解决方案
  • 6.2.3 进一步探讨
  • 6.2.4 提示与建议
  • 6.3 确定列表长度
  • 6.3.1 面临的问题
  • 6.3.2 解决方案
  • 6.3.3 进一步探讨
  • 6.3.4 提示与建议
  • 6.4 为列表添加元素
  • 6.4.1 面临的问题
  • 6.4.2 解决方案
  • 6.4.3 进一步探讨
  • 6.4.4 提示与建议
  • 6.5 删除列表元素
  • 6.5.1 面临的问题
  • 6.5.2 解决方案
  • 6.5.3 进一步探讨
  • 6.5.4 提示与建议
  • 6.6 通过解析字符串创建列表
  • 6.6.1 面临的问题
  • 6.6.2 解决方案
  • 6.6.3 进一步探讨
  • 6.6.4 提示与建议
  • 6.7 遍历列表
  • 6.7.1 面临的问题
  • 6.7.2 解决方案
  • 6.7.3 进一步探讨
  • 6.7.4 提示与建议
  • 6.8 枚举列表
  • 6.8.1 面临的问题
  • 6.8.2 解决方案
  • 6.8.3 进一步探讨
  • 6.8.4 提示与建议
  • 6.9 列表排序
  • 6.9.1 面临的问题
  • 6.9.2 解决方案
  • 6.9.3 进一步探讨
  • 6.9.4 提示与建议
  • 6.10 分割列表
  • 6.10.1 面临的问题
  • 6.10.2 解决方案
  • 6.10.3 进一步探讨
  • 6.10.4 提示与建议
  • 6.11 将函数应用于列表
  • 6.11.1 面临的问题
  • 6.11.2 解决方案
  • 6.11.3 进一步探讨
  • 6.11.4 提示与建议
  • 6.12 创建字典
  • 6.12.1 面临的问题
  • 6.12.2 解决方案
  • 6.12.3 进一步探讨
  • 6.12.4 提示与建议
  • 6.13 访问字典
  • 6.13.1 面临的问题
  • 6.13.2 解决方案
  • 6.13.3 进一步探讨
  • 6.13.4 提示与建议
  • 6.14 删除字典元素
  • 6.14.1 面临的问题
  • 6.14.2 解决方案
  • 6.14.3 进一步探讨
  • 6.14.4 提示与建议
  • 6.15 遍历字典
  • 6.15.1 面临的问题
  • 6.15.2 解决方案
  • 6.15.3 进一步探讨
  • 6.15.4 提示与建议
  • 第7章 Python高级特性
  • 7.0 引言
  • 7.1 格式化数字
  • 7.1.1 面临的问题
  • 7.1.2 解决方案
  • 7.1.3 进一步探讨
  • 7.1.4 提示与建议
  • 7.2 格式化时间和日期
  • 7.2.1 面临的问题
  • 7.2.2 解决方案
  • 7.2.3 进一步探讨
  • 7.2.4 提示与建议
  • 7.3 返回多个值
  • 7.3.1 面临的问题
  • 7.3.2 解决方案
  • 7.3.3 进一步探讨
  • 7.3.4 提示与建议
  • 7.4 定义类
  • 7.4.1 面临的问题
  • 7.4.2 解决方案
  • 7.4.3 进一步探讨
  • 7.4.4 提示与建议
  • 7.5 定义方法
  • 7.5.1 面临的问题
  • 7.5.2 解决方案
  • 7.5.3 进一步探讨
  • 7.5.4 提示与建议
  • 7.6 继承
  • 7.6.1 面临的问题
  • 7.6.2 解决方案
  • 7.6.3 进一步探讨
  • 7.6.4 提示与建议
  • 7.7 向文件中写入内容
  • 7.7.1 面临的问题
  • 7.7.2 解决方案
  • 7.7.3 进一步探讨
  • 7.7.4 提示与建议
  • 7.8 读文件
  • 7.8.1 面临的问题
  • 7.8.2 解决方案
  • 7.8.3 进一步探讨
  • 7.8.4 提示与建议
  • 7.9 序列化
  • 7.9.1 面临的问题
  • 7.9.2 解决方案
  • 7.9.3 进一步探讨
  • 7.9.4 提示与建议
  • 7.10 异常处理
  • 7.10.1 面临的问题
  • 7.10.2 解决方案
  • 7.10.3 进一步探讨
  • 7.10.4 提示与建议
  • 7.11 使用模块
  • 7.11.1 面临的问题
  • 7.11.2 解决方案
  • 7.11.3 进一步探讨
  • 7.11.4 提示与建议
  • 7.12 随机数
  • 7.12.1 面临的问题
  • 7.12.2 解决方案
  • 7.12.3 进一步探讨
  • 7.12.4 提示与建议
  • 7.13 利用Python发送Web请求
  • 7.13.1 面临的问题
  • 7.13.2 解决方案
  • 7.13.3 进一步探讨
  • 7.13.4 提示与建议
  • 7.14 Python的命令行参数
  • 7.14.1 面临的问题
  • 7.14.2 解决方案
  • 7.14.3 进一步探讨
  • 7.14.4 提示与建议
  • 7.15 从Python运行Linux命令
  • 7.15.1 面临的问题
  • 7.15.2 解决方案
  • 7.15.3 进一步探讨
  • 7.15.4 提示与建议
  • 7.16 从Python发送电子邮件
  • 7.16.1 面临的问题
  • 7.16.2 解决方案
  • 7.16.3 进一步探讨
  • 7.16.4 提示与建议
  • 7.17 利用Python编写简单Web服务器
  • 7.17.1 面临的问题
  • 7.17.2 解决方案
  • 7.17.3 进一步探讨
  • 7.17.4 提示与建议
  • 7.18 让Python无所事事
  • 7.18.1 面临的问题
  • 7.18.2 解决方案
  • 7.18.3 进一步探讨
  • 7.18.4 提示与建议
  • 7.19 同时进行多件事情
  • 7.19.1 面临的问题
  • 7.19.2 解决方案
  • 7.19.3 进一步探讨
  • 7.19.4 提示与建议
  • 7.20 将Python应用于树莓派版Minecraft
  • 7.20.1 面临的问题
  • 7.20.2 解决方案
  • 7.20.3 进一步探讨
  • 7.20.4 提示与建议
  • 7.21 解析JSON
  • 7.21.1 面临的问题
  • 7.21.2 解决方案
  • 7.21.3 进一步探讨
  • 7.21.4 提示与建议
  • 7.22 创建用户界面
  • 7.22.1 面临的问题
  • 7.22.2 解决方案
  • 7.22.3 进一步探讨
  • 7.22.4 提示与建议
  • 7.23 使用正则表达式在文本中搜索
  • 7.23.1 面临的问题
  • 7.23.2 解决方案
  • 7.23.3 进一步探讨
  • 7.23.4 提示与建议
  • 7.24 使用正则表达式来验证数据输入
  • 7.24.1 面临的问题
  • 7.24.2 解决方案
  • 7.24.3 进一步探讨
  • 7.24.4 提示与建议
  • 7.25 使用正则表达式抓取网页
  • 7.25.1 面临的问题
  • 7.25.2 解决方案
  • 7.25.3 进一步探讨
  • 7.25.4 提示与建议
  • 第8章 机器视觉
  • 8.0 引言
  • 8.1 安装SimpleCV
  • 8.1.1 面临的问题
  • 8.1.2 解决方案
  • 8.1.3 进一步探讨
  • 8.1.4 提示与建议
  • 8.2 为机器视觉配置USB摄像头
  • 8.2.1 面临的问题
  • 8.2.2 解决方案
  • 8.2.3 进一步探讨
  • 8.2.4 提示与建议
  • 8.3 将树莓派的摄像头模块用于机器视觉
  • 8.3.1 面临的问题
  • 8.3.2 解决方案
  • 8.3.3 进一步探讨
  • 8.3.4 提示与建议
  • 8.4 数硬币
  • 8.4.1 面临的问题
  • 8.4.2 解决方案
  • 8.4.3 进一步探讨
  • 8.4.4 提示与建议
  • 8.5 人脸检测
  • 8.5.1 面临的问题
  • 8.5.2 解决方案
  • 8.5.3 进一步探讨
  • 8.5.4 提示与建议
  • 8.6 运动检测
  • 8.6.1 面临的问题
  • 8.6.2 解决方案
  • 8.6.3 进一步探讨
  • 8.6.4 提示与建议
  • 8.7 光学字符识别
  • 8.7.1 面临的问题
  • 8.7.2 解决方案
  • 8.7.3 进一步探讨
  • 8.7.4 提示与建议
  • 第9章 硬件基础
  • 9.0 引言
  • 9.1 GPIO连接器使用说明
  • 9.1.1 面临的问题
  • 9.1.2 解决方案
  • 9.1.3 进一步探讨
  • 9.1.4 提示与建议
  • 9.2 使用GPIO接口时树莓派的安全保护
  • 9.2.1 面临的问题
  • 9.2.2 解决方案
  • 9.2.3 进一步探讨
  • 9.2.4 提示与建议
  • 9.3 配置I2C
  • 9.3.1 面临的问题
  • 9.3.2 解决方案
  • 9.3.3 进一步探讨
  • 9.3.4 提示与建议
  • 9.4 使用I2C工具
  • 9.4.1 面临的问题
  • 9.4.2 解决方案
  • 9.4.3 进一步探讨
  • 9.4.4 提示与建议
  • 9.5 配置SPI
  • 9.5.1 面临的问题
  • 9.5.2 解决方案
  • 9.5.3 进一步探讨
  • 9.5.4 提示与建议
  • 9.6 安装PySerial以便通过Python访问串口
  • 9.6.1 面临的问题
  • 9.6.2 解决方案
  • 9.6.3 进一步探讨
  • 9.6.4 提示与建议
  • 9.7 安装Minicom以检测串口
  • 9.7.1 面临的问题
  • 9.7.2 解决方案
  • 9.7.3 进一步探讨
  • 9.7.4 提示与建议
  • 9.8 使用带有跳线的面包板
  • 9.8.1 面临的问题
  • 9.8.2 解决方案
  • 9.8.3 进一步探讨
  • 9.8.4 提示与建议
  • 9.9 使用树莓派的排线连接面包板
  • 9.9.1 面临的问题
  • 9.9.2 解决方案
  • 9.9.3 进一步探讨
  • 9.9.4 提示与建议
  • 9.10 使用树莓派Squid
  • 9.10.1 面临的问题
  • 9.10.2 解决方案
  • 9.10.3 进一步探讨
  • 9.10.4 提示与建议
  • 9.11 使用Raspberry Squid按钮
  • 9.11.1 面临的问题
  • 9.11.2 解决方案
  • 9.11.3 进一步探讨
  • 9.11.4 提示与建议
  • 9.12 利用两个电阻器将5V信号转换为3.3V
  • 9.12.1 面临的问题
  • 9.12.2 解决方案
  • 9.12.3 进一步探讨
  • 9.12.4 提示与建议
  • 9.13 利用电平转换模块将5V信号转换为3.3V
  • 9.13.1 面临的问题
  • 9.13.2 解决方案
  • 9.13.3 进一步探讨
  • 9.13.4 提示与建议
  • 9.14 利用电池为树莓派供电
  • 9.14.1 面临的问题
  • 9.14.2 解决方案
  • 9.14.3 进一步探讨
  • 9.14.4 提示与建议
  • 9.15 利用锂电池为树莓派供电
  • 9.15.1 面临的问题
  • 9.15.2 解决方案
  • 9.15.3 进一步探讨
  • 9.15.4 提示与建议
  • 9.16 Sense HAT入门指南
  • 9.16.1 面临的问题
  • 9.16.2 解决方案
  • 9.16.3 进一步探讨
  • 9.16.4 提示与建议
  • 9.17 Explorer HAT Pro入门指南
  • 9.17.1 面临的问题
  • 9.17.2 解决方案
  • 9.17.3 进一步探讨
  • 9.17.4 提示与建议
  • 9.18 RasPiRobot Board入门指南
  • 9.18.1 面临的问题
  • 9.18.2 解决方案
  • 9.18.3 进一步探讨
  • 9.18.4 提示与建议
  • 9.19 使用Pi Plate原型板
  • 9.19.1 面临的问题
  • 9.19.2 解决方案
  • 9.19.3 进一步探讨
  • 9.19.4 提示与建议
  • 9.20 制作树莓派扩展板
  • 9.20.1 面临的问题
  • 9.20.2 解决方案
  • 9.20.3 进一步探讨
  • 9.20.4 提示与建议
  • 9.21 树莓派Zero与W型树莓派Zero
  • 9.21.1 面临的问题
  • 9.21.2 解决方案
  • 9.21.3 进一步探讨
  • 9.21.4 提示与建议
  • 第10章 控制硬件
  • 10.0 引言
  • 10.1 连接LED
  • 10.1.1 面临的问题
  • 10.1.2 解决方案
  • 10.1.3 进一步探讨
  • 10.1.4 提示与建议
  • 10.2 让GPIO引脚进入安全状态
  • 10.2.1 面临的问题
  • 10.2.2 解决方案
  • 10.2.3 进一步探讨
  • 10.2.4 提示与建议
  • 10.3 控制LED的亮度
  • 10.3.1 面临的问题
  • 10.3.2 解决方案
  • 10.3.3 进一步探讨
  • 10.3.4 提示与建议
  • 10.4 利用晶体管开关大功率直流设备
  • 10.4.1 面临的问题
  • 10.4.2 解决方案
  • 10.4.3 进一步探讨
  • 10.4.4 提示与建议
  • 10.5 使用继电器控制大功率设备的开关
  • 10.5.1 面临的问题
  • 10.5.2 解决方案
  • 10.5.3 进一步探讨
  • 10.5.4 提示与建议
  • 10.6 控制高压交流设备
  • 10.6.1 面临的问题
  • 10.6.2 解决方案
  • 10.6.3 进一步探讨
  • 10.6.4 提示与建议
  • 10.7 用Android手机和蓝牙控制硬件
  • 10.7.1 面临的问题
  • 10.7.2 解决方案
  • 10.7.3 进一步探讨
  • 10.7.4 提示与建议
  • 10.8 编写用于控制开关的用户界面
  • 10.8.1 面临的问题
  • 10.8.2 解决方案
  • 10.8.3 进一步探讨
  • 10.8.4 提示与建议
  • 10.9 编写控制LED和电机的PWM功率的用户界面
  • 10.9.1 面临的问题
  • 10.9.2 解决方案
  • 10.9.3 进一步探讨
  • 10.9.4 提示与建议
  • 10.10 改变RGB LED的颜色
  • 10.10.1 面临的问题
  • 10.10.2 解决方案
  • 10.10.3 进一步探讨
  • 10.10.4 提示与建议
  • 10.11 将模拟仪表用作显示器
  • 10.11.1 面临的问题
  • 10.11.2 解决方案
  • 10.11.3 进一步探讨
  • 10.11.4 提示与建议
  • 第11章 电机
  • 11.0 引言
  • 11.1 控制伺服电机
  • 11.1.1 面临的问题
  • 11.1.2 解决方案
  • 11.1.3 进一步探讨
  • 11.1.4 提示与建议
  • 11.2 精确控制伺服电机
  • 11.2.1 面临的问题
  • 11.2.2 解决方案
  • 11.2.3 进一步探讨
  • 11.2.4 提示与建议
  • 11.3 精确控制多台伺服电机
  • 11.3.1 面临的问题
  • 11.3.2 解决方案
  • 11.3.3 进一步探讨
  • 11.3.4 提示与建议
  • 11.4 控制直流电机的速度
  • 11.4.1 面临的问题
  • 11.4.2 解决方案
  • 11.4.3 进一步探讨
  • 11.4.4 提示与建议
  • 11.5 控制直流电机的方向
  • 11.5.1 面临的问题
  • 11.5.2 解决方案
  • 11.5.3 进一步探讨
  • 11.5.4 提示与建议
  • 11.6 使用单极步进电机
  • 11.6.1 面临的问题
  • 11.6.2 解决方案
  • 11.6.3 进一步探讨
  • 11.6.4 提示与建议
  • 11.7 使用双极步进电机
  • 11.7.1 面临的问题
  • 11.7.2 解决方案
  • 11.7.3 进一步探讨
  • 11.7.4 提示与建议
  • 11.8 利用步进电机HAT驱动双极步进电机
  • 11.8.1 面临的问题
  • 11.8.2 解决方案
  • 11.8.3 进一步探讨
  • 11.8.4 提示与建议
  • 11.9 使用RasPiRobot Board驱动双极步进电机
  • 11.9.1 面临的问题
  • 11.9.2 解决方案
  • 11.9.3 进一步探讨
  • 11.9.4 提示与建议
  • 11.10 打造一款简单的机器人小车
  • 11.10.1 面临的问题
  • 11.10.2 解决方案
  • 11.10.3 进一步探讨
  • 11.10.4 提示与建议
  • 第12章 数字输入
  • 12.0 引言
  • 12.1 连接按钮开关
  • 12.1.1 面临的问题
  • 12.1.2 解决方案
  • 12.1.3 进一步探讨
  • 12.1.4 提示与建议
  • 12.2 通过按钮开关切换开关状态
  • 12.2.1 面临的问题
  • 12.2.2 解决方案
  • 12.2.3 进一步探讨
  • 12.2.4 提示与建议
  • 12.3 使用双位拨动开关或滑动开关
  • 12.3.1 面临的问题
  • 12.3.2 解决方案
  • 12.3.3 进一步探讨
  • 12.3.4 提示与建议
  • 12.4 使用三位拨动开关
  • 12.4.1 面临的问题
  • 12.4.2 解决方案
  • 12.4.3 进一步探讨
  • 12.4.4 提示与建议
  • 12.5 按钮去抖
  • 12.5.1 面临的问题
  • 12.5.2 解决方案
  • 12.5.3 进一步探讨
  • 12.5.4 提示与建议
  • 12.6 使用外部上拉电阻器
  • 12.6.1 面临的问题
  • 12.6.2 解决方案
  • 12.6.3 进一步探讨
  • 12.6.4 提示与建议
  • 12.7 使用旋转(正交)编码器
  • 12.7.1 面临的问题
  • 12.7.2 解决方案
  • 12.7.3 进一步探讨
  • 12.7.4 提示与建议
  • 12.8 使用数字键盘
  • 12.8.1 面临的问题
  • 12.8.2 解决方案
  • 12.8.3 进一步探讨
  • 12.8.4 提示与建议
  • 12.9 检测移动
  • 12.9.1 面临的问题
  • 12.9.2 解决方案
  • 12.9.3 进一步探讨
  • 12.9.4 提示与建议
  • 12.10 为树莓派添加GPS模块
  • 12.10.1 面临的问题
  • 12.10.2 解决方案
  • 12.10.3 进一步探讨
  • 12.10.4 提示与建议
  • 12.11 拦截按键
  • 12.11.1 面临的问题
  • 12.11.2 解决方案
  • 12.11.3 进一步探讨
  • 12.11.4 提示与建议
  • 12.12 拦截鼠标移动
  • 12.12.1 面临的问题
  • 12.12.2 解决方案
  • 12.12.3 进一步探讨
  • 12.12.4 提示与建议
  • 12.13 使用实时时钟模块
  • 12.13.1 面临的问题
  • 12.13.2 解决方案
  • 12.13.3 进一步探讨
  • 12.13.4 提示与建议
  • 12.14 为树莓派提供重启按钮
  • 12.14.1 面临的问题
  • 12.14.2 解决方案
  • 12.14.3 进一步探讨
  • 12.14.4 提示与建议
  • 第13章 传感器
  • 13.0 引言
  • 13.1 使用电阻式传感器
  • 13.1.1 面临的问题
  • 13.1.2 解决方案
  • 13.1.3 进一步探讨
  • 13.1.4 提示与建议
  • 13.2 测量亮度
  • 13.2.1 面临的问题
  • 13.2.2 解决方案
  • 13.2.3 进一步探讨
  • 13.2.4 提示与建议
  • 13.3 利用热敏电阻器测量温度
  • 13.3.1 面临的问题
  • 13.3.2 解决方案
  • 13.3.3 进一步探讨
  • 13.3.4 提示与建议
  • 13.4 检测甲烷
  • 13.4.1 面临的问题
  • 13.4.2 解决方案
  • 13.4.3 进一步探讨
  • 13.4.4 提示与建议
  • 13.5 测量二氧化碳浓度
  • 13.5.1 面临的问题
  • 13.5.2 解决方案
  • 13.5.3 进一步探讨
  • 13.5.4 提示与建议
  • 13.6 测量电压
  • 13.6.1 面临的问题
  • 13.6.2 解决方案
  • 13.6.3 进一步探讨
  • 13.6.4 提示与建议
  • 13.7 为测量而降低电压
  • 13.7.1 面临的问题
  • 13.7.2 解决方案
  • 13.7.3 进一步探讨
  • 13.7.4 提示与建议
  • 13.8 使用电阻式传感器与ADC
  • 13.8.1 面临的问题
  • 13.8.2 解决方案
  • 13.8.3 进一步探讨
  • 13.8.4 提示与建议
  • 13.9 使用ADC测量温度
  • 13.9.1 面临的问题
  • 13.9.2 解决方案
  • 13.9.3 进一步探讨
  • 13.9.4 提示与建议
  • 13.10 测量树莓派的CPU温度
  • 13.10.1 面临的问题
  • 13.10.2 解决方案
  • 13.10.3 进一步探讨
  • 13.10.4 提示与建议
  • 13.11 利用Sense HAT测量温度、湿度和气压
  • 13.11.1 面临的问题
  • 13.11.2 解决方案
  • 13.11.3 进一步探讨
  • 13.11.4 提示与建议
  • 13.12 利用数字传感器测量温度
  • 13.12.1 面临的问题
  • 13.12.2 解决方案
  • 13.12.3 进一步探讨
  • 13.12.4 提示与建议
  • 13.13 利用MMA8452Q模块测量加速度
  • 13.13.1 面临的问题
  • 13.13.2 解决方案
  • 13.13.3 进一步探讨
  • 13.13.4 提示与建议
  • 13.14 使用Sense HAT检测磁北
  • 13.14.1 面临的问题
  • 13.14.2 解决方案
  • 13.14.3 进一步探讨
  • 13.14.4 提示与建议
  • 13.15 使用Sense HAT的惯性管理单元
  • 13.15.1 面临的问题
  • 13.15.2 解决方案
  • 13.15.3 进一步探讨
  • 13.15.4 提示与建议
  • 13.16 利用簧片开关检测磁场
  • 13.16.1 面临的问题
  • 13.16.2 解决方案
  • 13.16.3 进一步探讨
  • 13.16.4 提示与建议
  • 13.17 利用Sense HAT感应磁场
  • 13.17.1 面临的问题
  • 13.17.2 解决方案
  • 13.17.3 进一步探讨
  • 13.17.4 提示与建议
  • 13.18 测量距离
  • 13.18.1 面临的问题
  • 13.18.2 解决方案
  • 13.18.3 进一步探讨
  • 13.18.4 提示与建议
  • 13.19 使用飞行时间传感器测量距离
  • 13.19.1 面临的问题
  • 13.19.2 解决方案
  • 13.19.3 进一步探讨
  • 13.19.4 提示与建议
  • 13.20 电容式触摸传感技术
  • 13.20.1 面临的问题
  • 13.20.2 解决方案
  • 13.20.3 进一步探讨
  • 13.20.4 提示与建议
  • 13.21 用RFID读写器读取智能卡
  • 13.21.1 面临的问题
  • 13.21.2 解决方案
  • 13.21.3 进一步探讨
  • 13.21.4 提示与建议
  • 13.22 显示传感器的值
  • 13.22.1 面临的问题
  • 13.22.2 解决方案
  • 13.22.3 进一步探讨
  • 13.22.4 提示与建议
  • 13.23 利用USB闪存驱动器记录日志
  • 13.23.1 面临的问题
  • 13.23.2 解决方案
  • 13.23.3 进一步探讨
  • 13.23.4 提示与建议
  • 第14章 显示设备
  • 14.0 引言
  • 14.1 使用四位LED显示设备
  • 14.1.1 面临的问题
  • 14.1.2 解决方案
  • 14.1.3 进一步探讨
  • 14.1.4 提示与建议
  • 14.2 在I2C LED矩阵上面显示消息
  • 14.2.1 面临的问题
  • 14.2.2 解决方案
  • 14.2.3 进一步探讨
  • 14.2.4 提示与建议
  • 14.3 使用Sense HAT LED矩阵显示器
  • 14.3.1 面临的问题
  • 14.3.2 解决方案
  • 14.3.3 进一步探讨
  • 14.3.4 提示与建议
  • 14.4 在Alphanumeric LCD HAT上显示消息
  • 14.4.1 面临的问题
  • 14.4.2 解决方案
  • 14.4.3 进一步探讨
  • 14.4.4 提示与建议
  • 14.5 使用OLED图形显示器
  • 14.5.1 面临的问题
  • 14.5.2 解决方案
  • 14.5.3 进一步探讨
  • 14.5.4 提示与建议
  • 14.6 使用可寻址的RGB LED灯条
  • 14.6.1 面临的问题
  • 14.6.2 解决方案
  • 14.6.3 进一步探讨
  • 14.6.4 提示与建议
  • 14.7 使用Pimoroni Unicorn HAT
  • 14.7.1 面临的问题
  • 14.7.2 解决方案
  • 14.7.3 进一步探讨
  • 14.7.4 提示与建议
  • 14.8 使用ePaper显示屏
  • 14.8.1 面临的问题
  • 14.8.2 解决方案
  • 14.8.3 进一步探讨
  • 14.8.4 提示与建议
  • 第15章 音频设备
  • 15.0 引言
  • 15.1 连接一个扬声器
  • 15.1.1 面临的问题
  • 15.1.2 解决方案
  • 15.1.3 进一步探讨
  • 15.1.4 提示与建议
  • 15.2 控制声音的输出位置
  • 15.2.1 面临的问题
  • 15.2.2 解决方案
  • 15.2.3 进一步探讨
  • 15.2.4 提示与建议
  • 15.3 通过命令行播放声音
  • 15.3.1 面临的问题
  • 15.3.2 解决方案
  • 15.3.3 进一步探讨
  • 15.3.4 提示与建议
  • 15.4 通过Python程序播放声音
  • 15.4.1 面临的问题
  • 15.4.2 解决方案
  • 15.4.3 进一步探讨
  • 15.4.4 提示与建议
  • 15.5 使用USB麦克风
  • 15.5.1 面临的问题
  • 15.5.2 解决方案
  • 15.5.3 进一步探讨
  • 15.5.4 提示与建议
  • 15.6 播放蜂鸣声
  • 15.6.1 面临的问题
  • 15.6.2 解决方案
  • 15.6.3 进一步探讨
  • 15.6.4 提示与建议
  • 第16章 物联网
  • 16.0 引言
  • 16.1 使用Web接口控制GPIO输出
  • 16.1.1 面临的问题
  • 16.1.2 解决方案
  • 16.1.3 进一步探讨
  • 16.1.4 提示与建议
  • 16.2 在网页上显示传感器读数
  • 16.2.1 面临的问题
  • 16.2.2 解决方案
  • 16.2.3 进一步探讨
  • 16.2.4 提示与建议
  • 16.3 Node-RED入门
  • 16.3.1 面临的问题
  • 16.3.2 解决方案
  • 16.3.3 进一步探讨
  • 16.3.4 提示与建议
  • 16.4 使用IFTTT发送电子邮件及其他通知
  • 16.4.1 面临的问题
  • 16.4.2 解决方案
  • 16.4.3 进一步探讨
  • 16.4.4 提示与建议
  • 16.5 利用ThingSpeak发送推文
  • 16.5.1 面临的问题
  • 16.5.2 解决方案
  • 16.5.3 进一步探讨
  • 16.5.4 提示与建议
  • 16.6 CheerLights
  • 16.6.1 面临的问题
  • 16.6.2 解决方案
  • 16.6.3 进一步探讨
  • 16.6.4 提示与建议
  • 16.7 向ThingSpeak发送传感器数据
  • 16.7.1 面临的问题
  • 16.7.2 解决方案
  • 16.7.3 进一步探讨
  • 16.7.4 提示与建议
  • 16.8 使用Dweet和IFTTT响应推文
  • 16.8.1 面临的问题
  • 16.8.2 解决方案
  • 16.8.3 进一步探讨
  • 16.8.4 提示与建议
  • 第17章 家庭自动化
  • 17.0 引言
  • 17.1 通过Mosquitto将树莓派打造成MQTT代理
  • 17.1.1 面临的问题
  • 17.1.2 解决方案
  • 17.1.3 进一步探讨
  • 17.1.4 提示与建议
  • 17.2 组合使用Node-RED与MQTT服务器
  • 17.2.1 面临的问题
  • 17.2.2 解决方案
  • 17.2.3 进一步探讨
  • 17.2.4 提示与建议
  • 17.3 刷写Sonoff Wi-Fi智能开关,使其适用于MQTT
  • 17.3.1 面临的问题
  • 17.3.2 解决方案
  • 17.3.3 进一步探讨
  • 17.3.4 提示与建议
  • 17.4 配置Sonoff Wi-Fi智能开关
  • 17.4.1 面临的问题
  • 17.4.2 解决方案
  • 17.4.3 进一步探讨
  • 17.4.4 提示与建议
  • 17.5 通过MQTT使用Sonoff网络开关
  • 17.5.1 面临的问题
  • 17.5.2 解决方案
  • 17.5.3 进一步探讨
  • 17.5.4 提示与建议
  • 17.6 利用Node-RED制作Sonoff闪烁开关
  • 17.6.1 面临的问题
  • 17.6.2 解决方案
  • 17.6.3 进一步探讨
  • 17.6.4 提示与建议
  • 17.7 Node-RED Dashboard扩展
  • 17.7.1 面临的问题
  • 17.7.2 解决方案
  • 17.7.3 进一步探讨
  • 17.7.4 提示与建议
  • 17.8 基于Node-RED的预定事件
  • 17.8.1 面临的问题
  • 17.8.2 解决方案
  • 17.8.3 进一步探讨
  • 17.8.4 提示与建议
  • 17.9 通过Wemos D1发布MQTT消息
  • 17.9.1 面临的问题
  • 17.9.2 解决方案
  • 17.9.3 进一步探讨
  • 17.9.4 提示与建议
  • 17.10 在Node-RED中使用Wemos D1
  • 17.10.1 面临的问题
  • 17.10.2 解决方案
  • 17.10.3 进一步探讨
  • 17.10.4 提示与建议
  • 第18章 Arduino与树莓派
  • 18.0 引言
  • 18.1 通过树莓派对Arduino进行编程
  • 18.1.1 面临的问题
  • 18.1.2 解决方案
  • 18.1.3 进一步探讨
  • 18.1.4 提示与建议
  • 18.2 利用Serial Monitor与Arduino进行通信
  • 18.2.1 面临的问题
  • 18.2.2 解决方案
  • 18.2.3 进一步探讨
  • 18.2.4 提示与建议
  • 18.3 配置PyFirmata以便通过树莓派来控制Arduino
  • 18.3.1 面临的问题
  • 18.3.2 解决方案
  • 18.3.3 进一步探讨
  • 18.3.4 提示与建议
  • 18.4 通过树莓派对Arduino的数字输出进行写操作
  • 18.4.1 面临的问题
  • 18.4.2 解决方案
  • 18.4.3 进一步探讨
  • 18.4.4 提示与建议
  • 18.5 使用PyFirmata与TTL串口
  • 18.5.1 面临的问题
  • 18.5.2 解决方案
  • 18.5.3 进一步探讨
  • 18.5.4 提示与建议
  • 18.6 使用PyFirmata读取Arduino的数字输入
  • 18.6.1 面临的问题
  • 18.6.2 解决方案
  • 18.6.3 进一步探讨
  • 18.6.4 提示与建议
  • 18.7 利用PyFirmata读取Arduino的模拟输入
  • 18.7.1 面临的问题
  • 18.7.2 解决方案
  • 18.7.3 进一步探讨
  • 18.7.4 提示与建议
  • 18.8 模拟输出(PWM)与PyFirmata
  • 18.8.1 面临的问题
  • 18.8.2 解决方案
  • 18.8.3 进一步探讨
  • 18.8.4 提示与建议
  • 18.9 利用PyFirmata控制伺服电机
  • 18.9.1 面临的问题
  • 18.9.2 解决方案
  • 18.9.3 进一步探讨
  • 18.9.4 提示与建议
  • 18.10 在树莓派上使用小型Arduino
  • 18.10.1 面临的问题
  • 18.10.2 解决方案
  • 18.10.3 进一步探讨
  • 18.10.4 提示与建议
  • 18.11 使用支持Wi-Fi的小型Arduino兼容系统(ESP8266)
  • 18.11.1 面临的问题
  • 18.11.2 解决方案
  • 18.11.3 进一步探讨
  • 18.11.4 提示与建议
  • 附录A 配件与供应商
  • A.1 配件
  • A.2 成型设备与套件
  • 电阻器与电容器
  • 晶体管与二极管
  • A.3 集成电路
  • A.4 光电器件
  • A.5 模块
  • A.6 杂项
  • 附录B 树莓派引脚
  • B.1 B、B+、A+型树莓派4/3/2/Zero
  • B.2 B型树莓派第2版与A型树莓派
  • B.3 B型树莓派第1版
  • 作者简介
  • 封面简介
展开全部

评分及书评

尚无评分
目前还没人评分

出版方

人民邮电出版社

人民邮电出版社是工业和信息化部主管的大型专业出版社,成立于1953年10月1日。人民邮电出版社坚持“立足信息产业、面向现代社会、传播科学知识、服务科教兴国”,致力于通信、计算机、电子技术、教材、少儿、经管、摄影、集邮、旅游、心理学等领域的专业图书出版。