带有 Raspberry Pi GPIO 的 espBerry ESP32 开发板
产品信息
规格
- 电源: 多种来源
- 通用输入输出接口(GPIO): 与 Raspberry Pi 40 针 GPIO 接头兼容
- 无线功能: 是的
- 编程: Arduino IDE
超过view
espBerry DevBoard 通过连接到板载 RPi 兼容的 32 引脚 GPIO 接头,将 ESP40DevKitC 开发板与任何 Raspberry Pi HAT 相结合。它并不是 Raspberry Pi 的替代品,而是通过利用市场上各种 RPi HAT 来扩展 ESP32 的功能。
硬件
电源连接器
espBerry 可以通过多种来源供电。有关可用电源的详细信息,请参阅用户手册。
espBerry 原理图
espBerry 旨在映射尽可能多的信号(GPIO、SPI、UART 等)。但是,它可能不涵盖市场上提供的所有 HAT。要适应和开发您自己的 HAT,请参阅 espBerry 的原理图。您可以下载完整的 espBerry 原理图 (PDF) 这里.
ESP32 DevKit 引脚分配
ESP32 DevKit 引脚排列提供了电路板引脚配置的可视化表示。对于一个完整的 view 的引脚分配图像,单击 这里.
Raspberry Pi 40 针 GPIO 接头
Raspberry Pi 的电路板顶部边缘有一排 GPIO 引脚。 espBerry 与所有当前 Raspberry Pi 板上的 40 针 GPIO 接头兼容。请注意,Raspberry Pi Zero、Raspberry Pi Zero W 和 Raspberry Pi Zero 2 W 上未填充 GPIO 接头。在 Raspberry Pi 1 Model B+ 之前,主板具有较短的 26 针接头。 GPIO 接头的引脚间距为 0.1(2.54 毫米)。
SPI 端口连接
espBerry 上的 SPI 端口允许串行全双工和同步通信。它利用时钟信号在中央控制器(主机)和多个外围设备(从机)之间传输和接收数据。与异步的 UART 通信不同,时钟信号同步数据传输。
常问问题
- 我可以将任何 Raspberry Pi HAT 与 espBerry 一起使用吗?
espBerry 旨在通过连接到板载 40 针 GPIO 接头来与任何 Raspberry Pi HAT 兼容。但是,它可能不涵盖市场上提供的所有 HAT。更多信息请参考 espBerry 原理图。 - espBerry 可以使用什么编程语言?
espBerry支持使用流行的Arduino IDE进行编程,具有出色的编程能力。 - 我在哪里可以找到更多信息和资源?
虽然本用户手册提供了详细信息,但您还可以浏览在线帖子和文章以获取其他资源。如果您需要更多信息或有建议,请随时与我们联系。
超过view
- espBerry DevBoard 结合了 ESP32-DevKitC开发 通过连接到板载 RPi 兼容的 40 针 GPIO 接头,可将开发板与任何 Raspberry Pi HAT 配合使用。
- espBerry 的目的不应被视为 Raspberry Pi 的替代品,而应通过利用市场上大量的 RPi HAT 并利用先进技术来扩展 ESP32 的功能。tage 多种灵活的硬件选项。
- espBerry 是原型设计和物联网 (IoT) 应用的完美解决方案,尤其是那些需要无线功能的应用。全部开源代码amp莱斯采取阿德万tag流行的 Arduino IDE 以其出色的编程能力。
- 接下来,我们将解释硬件和软件功能,包括添加您选择的 Raspberry HAT 所需了解的所有详细信息。此外,我们还将提供一系列的硬件和软件amp以下文件演示了 espBerry 的功能。
- 但是,我们将避免重复通过其他资源(即在线帖子和文章)已经提供的信息。只要我们认为需要额外信息,我们就会添加参考资料供您学习。
笔记: 我们正在努力记录对客户来说可能很重要的每一个细节。然而,记录需要时间,而且我们并不总是完美的。如果您需要更多信息或有建议,请随时 联系我们.
espBerry 特点
- 处理器: ESP32 开发套件C
- 32 位 Xtensa 双核 @240 MHz
- WiFi IEEE 802.11 b/g/n 2.4 GHz
- 蓝牙 4.2 BR/EDR 和 BLE
- 520 kB SRAM(16 kB 用于缓存)
- 448 KB 只读存储器
- 可通过 USB A/micro-USB B 电缆进行编程
- Raspberry Pi 兼容 40 针 GPIO 接头
- 20 GPIO
- 2 个 SPI
- 1 个 UART
- 输入功率: 5 伏直流电
- 反极性保护
- 过音量tag电子保护
- 电源筒连接器插孔 2.00mm ID (0.079ʺ), 5.50mm OD (0.217ʺ)
- 提供 12/24 VDC 选项
- 操作范围: -40℃~85℃
笔记: 大多数 RPi HAT 的工作温度为 0°C ~ 50°C - 方面: 95 毫米 x 56 毫米 – 3.75ʺ x 2.2ʺ
符合 标准 Raspberry Pi HAT 机械规格…
硬件
- 一般来说,espBerry 开发板通过连接到板载 RPi 兼容的 32 针 GPIO 接头,将 ESP40-DevKitC 模块与任何 Raspberry Pi HAT 结合起来。
- ESP32 和 RPi HAT 之间最常用的连接是 SPI 和 UART 端口,如以下章节所述。我们还映射了几个 GPIO(通用输入输出)信号。有关映射的更多详细信息,请参阅原理图。
- 我们正在努力提供良好的文档。但是,请理解,我们无法在本用户手册中解释所有 ESP32 详细信息。欲了解更多详细信息,请参阅 ESP32-DevKitC V4 入门指南.
espBerry 板组件
电源连接器
- espBerry 可以通过多种来源供电:
- ESP32 DevKitC 模块上的 Micro-USB 连接器
- 5 VDC 插孔 2.0 毫米
- 5 VDC 接线盒
- 连接到 RPi HAT 的外部电源
- 有些 Raspberry Pi HAT 允许直接向 HAT 提供外部电源(例如 12 VDC)。通过此外部电源为 espBerry 供电时,需要将电源选择器处的跳线设置为“EXT”。否则,必须设置为“On Board”。
- 可以在内部为 espBerry 供电(“板载”),同时仍然为 HAT 供电。
espBerry 原理图
- espBerry 旨在映射尽可能多的信号(GPIO、SPI、UART 等)。然而,这并不一定意味着 espBerry 涵盖了市场上所有可用的 HAT。您改编和开发自己的 HAT 的最终来源必须是 espBerry 的原理图。
- 单击此处下载完整的 espBerry 原理图 (PDF)。
- 此外,我们在后续章节中添加了 ESP32 DevKitC 和 Raspberry Pi 40 针 GPIO 接头引脚排列。
ESP32 DevKit 引脚排列
对于完整的 view 上图的内容,请点击此处。
Raspberry Pi 40 针 GPIO 接头
- Raspberry Pi 的一个强大功能是板顶部边缘的一排 GPIO(通用输入/输出)引脚。当前所有 Raspberry Pi 板上均配有 40 针 GPIO 接头(Raspberry Pi Zero、Raspberry Pi Zero W 和 Raspberry Pi Zero 2 W 上未安装)。在 Raspberry Pi 1 Model B+ (2014) 之前,主板包含较短的 26 针接头。所有主板(包括 Raspberry Pi 400)上的 GPIO 接头的引脚间距为 0.1 英寸(2.54 毫米)。
- 有关详细信息,请参阅 Raspberry Pi 硬件 – GPIO 和 40 针接头.
- 有关Raspberry Pi HAT的更多信息,请参阅 附加板和 HAT.
SPI 端口连接
- SPI 代表串行外设接口,一种串行全双工同步接口。同步接口需要时钟信号来传输和接收数据。时钟信号在一个中央控制器(“主机”)和多个外围设备(“从机”)之间同步。与异步的 UART 通信不同,时钟信号控制数据何时发送以及何时准备好读取。
- 只有主设备可以控制时钟并向所有从设备提供时钟信号。没有时钟信号就无法传输数据。主站和从站都可以相互交换数据。不需要地址解码。
- ESP32 有 32 条 SPI 总线,但只有两条可用,分别为 HSPI 和 VSPI。如前所述,在 SPI 通信中,总是有一个控制器(也称为主设备)控制其他外围设备(也称为从设备)。您可以将 ESPXNUMX 配置为主站或从站。
- 在 espBerry 上,分配给默认 IO 的信号:
- 下图显示了从 ESP32 模块到 RPi GPIO 接头的 SPI 信号,作为原理图的摘录。
- 有多种类型的 ESP32 板可供选择。 espBerry 以外的主板可能有不同的默认 SPI 引脚,但您可以从其数据表中找到有关默认引脚的信息。但如果未提及默认引脚,您可以使用 Arduino 草图找到它们(使用下面的第一个链接)。
- 有关详细信息,请参阅:For more information, see:
- espBerry 默认使用 VSPI 连接,这意味着如果您使用默认信号,则不会遇到问题。有多种方法可以更改引脚分配并切换到 HSPI(如上述参考文献中所述),但我们尚未针对 espBerry 探索这些场景。
- 另请参阅有关 SPI 端口编程的部分。
串行 (UART) 端口连接
- 除板载 USB 端口外,ESP32 开发模块还具有 UART0、UART1 和 UART2 三个 UART 接口,可提供高达 5 Mbps 速度的异步通信。这些串行端口可以映射到几乎任何引脚。在 espBerry 上,我们将 IO15 指定为 Rx,将 IO16 指定为 Tx,它们连接到 16 针头上的 GPIO20 和 GPIO40,如下所示:
- 我们选择不在 ESP3 DevKit 上使用标准 RX/TX (GPIO1/GPIO32) 信号,因为它们通常用于通过 Arduino IDE 的串行监视器进行测试打印。这可能会干扰 ESP32 和 RPi HAT 之间的通信。相反,您必须按软件将 IO16 映射为 Rx,将 IO15 映射为 Tx,如本手册软件部分所述。
- 另请参阅我们的串行 (UART) 编程部分。
软件
- 下面,我们将简要解释 espBerry 最重要的编程方面。正如本用户手册前面提到的,我们将在我们认为需要其他信息的地方添加在线参考。
- 了解更多实践项目amp莱斯,另请参阅我们的 ESP32 编程技巧.
- 此外,还有很多前amp的 ESP32 编程文献,值得投资。
- 但是,我们强烈建议使用 使用 ESP8266 和 ESP32 的电子项目,特别适合您的无线应用项目。是的,现在有很多好书和免费的在线资源,但这就是我们正在使用的书。它使我们的蓝牙、BLE 和 WIFI 方法变得轻而易举。轻松编程无线应用程序很有趣,我们在我们的网站上分享它们 web 地点。
安装和准备 Arduino IDE
- 我们所有的编程amp由于易于安装和使用,这些文件是使用 Arduino IDE(集成开发环境)开发的。此外,网上还有大量适用于 ESP32 的 Arduino 草图。
- 对于安装,请按照下列步骤操作:
- 步骤 1: 第一步是下载并安装 Arduino IDE。通过链接 https://www.arduino.cc/en/Main/Software 并免费下载 IDE,可以轻松完成此操作。如果您已经拥有,请确保您拥有最新版本。
- 步骤 2: 安装完成后,打开 Arduino IDE,然后转到 Files -> 首选项打开首选项窗口并找到“附加板管理器” URLs:”如下图:
- 文本框可能为空或已包含其他内容 URL 如果您之前已将其用于另一块板。如果为空,只需粘贴以下内容 URL 到文本框中。
https://dl.espressif.com/dl/package_esp32_index.json - 如果文本框已经包含其他内容 URL 只需添加这个 URL 用逗号 (,) 分隔两者。我们已经有了 Teensy URL。我们刚刚进入 URL 并添加了逗号。
- 完成后,单击“确定”,窗口将消失。
- 文本框可能为空或已包含其他内容 URL 如果您之前已将其用于另一块板。如果为空,只需粘贴以下内容 URL 到文本框中。
- 步骤 3: 进入工具 -> 开发板 -> 开发板管理器,打开开发板管理器窗口并搜索 ESP32。如果 URL 粘贴正确后,您的窗口应该会找到下面带有“安装”按钮的屏幕,只需单击“安装”按钮,您的主板就会安装完毕。
上面的屏幕截图显示了安装后的 ESP32。 - 步骤 4: 在开始编程之前,必须设置选择合适的 ESP32 硬件(有多个选项)。导航至 Tools -> Boards 并选择 ESP32 Dev Module,如下所示:
- 步骤 5: 打开设备管理器并检查 ESP32 连接到哪个 COM 端口。
- 使用 espBerry 时,请寻找 Silicon Labs CP210x USB 转 UART 桥接器。在我们的设置中,它显示 COM4。返回 Arduino IDE,在“工具”->“端口”下,选择 ESP 连接的端口。
- 如果您是Arduino IDE的初学者,请参考 使用 Arduino 软件 (IDE).
SPI 端口编程
- 以下仅代表简述view SPI 编程。 SPI 编程并不容易,但每当我们开始一个新项目时,我们都会在线查找代码(例如 github.com)。
- 例如,为了对 MCP2515 CAN 控制器进行编程,我们使用 Cory Fowler 开发的用于 Arduino 的 MCP_CAN 库的修改版本,即我们正在利用他的知识和精力来完成我们的项目。
- 尽管如此,花时间了解基本的 SPI 编程还是值得的。例如,espBerry 的 SPI 信号映射如下所示:
- 这些设置必须应用在应用程序的代码中。请参阅以下资源以了解有关使用 ESP32 进行 SPI 编程的更多信息:
串行端口 (UART) 编程
- 在espBerry上,我们将IO15指定为Rx,IO16指定为Tx,它们连接到16针头上的GPIO20和GPIO40。
- 我们选择不在 ESP3 DevKit 上使用标准 RX/TX (GPIO1/GPIO32) 信号,因为它们通常用于通过 Arduino IDE 的串行监视器进行测试打印。这可能会干扰 ESP32 和 RPi HAT 之间的通信。相反,您必须根据软件将 IO16 映射为 Rx,将 IO15 映射为 Tx。
- 上面的代码代表一个应用程序amp文件使用 Serial1。
- 在 Arduino IDE 下使用 ESP32 时,您会注意到 Serial 命令工作正常,但 Serial1 和 Serial2 却不行。 ESP32 具有三个硬件串行端口,可以映射到几乎任何引脚。要使 Serial1 和 Serial2 工作,您需要涉及 HardwareSerial 类。作为参考,请参阅 ESP32、Arduino 和 3 个硬件串口.
- 另请参阅我们的帖子 espBerry 项目:带有 CH32F USB-UART 芯片的 ESP9102,串行速度高达 3Mbit/s.
关于公司
- 版权所有 © 2023 Copperhill Technologies Corporation – 保留所有权利
- https://espBerry.com
- https://copperhilltech.com
文件/资源
![]() |
带有 Raspberry Pi GPIO 的 espBerry ESP32 开发板 [pdf] 用户手册 带 Raspberry Pi GPIO 的 ESP32 开发板,ESP32,带 Raspberry Pi GPIO 的开发板,带 Raspberry Pi GPIO 的板,Raspberry Pi GPIO |