ESP32 设备有相当多的版本,命名可能令人困惑。本页记录了我通过阅读各种 Espressif 文档发现的内容。
下面我将提到“芯片”、“模块”、“开发套件”和“主板”。从小到大,我们有:
“芯片”——或片上系统或 SoC——是包含 ESP32 CPU 的最小封装。封装尺寸从 5×5 毫米到 7×7 毫米不等。它有 CPU、外设控制器、一些 RAM 和 ROM,可能还有一些片上 FLASH(但通常不是)。它的成本约为 1 美元。您很少会直接看到其中一个,因为它们通常位于带有金属罐的模块内。OEM 可以直接使用这些,但大多数人使用包含其他有用电路且更易于使用的模块版本。芯片的外观如下:
“模块”是一个金属外壳的 ESP32 东西,大约 1 英寸 x 0.7 英寸,3 面都有表面贴装焊针和一个天线 – 内置 PCB 天线或用于外部天线的“IPEX”连接器。金属外壳内部有一个 ESP32 CPU“片上系统”和一个用于程序存储的 SPI FLASH 芯片。模块由 Espressif Systems 制造。它们的价格约为 4 美元。除非您自己构建 PCB 并具有表面贴装组装能力,否则您不能直接使用模块。以下是具有不同天线选项的模块的图片:
“开发套件”是指一块小型 PCB,尺寸约为 2 英寸 x 1 英寸,上面装有 ESP32 模块。它的两侧有排针,因此可以插入排针插座。它有一个 5V 至 3.3V 的稳压器,用于为 ESP32 模块供电,还有一个带微型 USB 连接器的 USB 串行转换器,因此您可以将其插入计算机上的 USB 端口。不同的公司生产开发套件,价格从 8 美元到 20 美元不等。这是 Espressif Systems 的一款开发套件:
“电路板”是指与外界接口的 PCB;它具有步进驱动器插座或与外部步进器的连接、用于将电机电压(通常为 12-24V)降至 5V 的电压调节器,以及用于限位开关和主轴等的各种连接器。互联网上有一些电路板设计。Bart在 Tindie 上销售各种设计精美、支持良好的电路板,例如这个:
不同公司有不少不同的开发套件,例如“Adafruit Huzzah”、“Sparkfun Thing”、“Lilygo TTGO”、“D1 Mini ESP32”、“Geekworm EasyKit”、“Nodemcu-S32”等。不幸的是,它们并非全部兼容。它们的宽度和引脚数都不同。我甚至在 EBay 上看到过低价(约 4 美元)的“NodeMCU ESP32”设备,根据图片来看,它们实际上使用的是 ESP8266(一种功能弱得多的芯片)而不是 ESP32。
Bart 的电路板采用平行排列的插座针脚,因此它们可以接受 1 英寸、1.1 英寸甚至 1.2 英寸(针脚行距)的开发套件宽度。针脚数必须为 38,即底部有 2 排 19 个公针脚。
如果您现有的 ESP32 开发套件有 38 个引脚,并且宽度与您想要使用的电路板兼容,那么它可能会起作用。如果您要购买新的开发套件,最好购买 Espressif DevKitC,这样您就知道您买到的是什么。它们质量上乘,可从信誉良好的经销商处轻松获得(例如 Mouser、DigiKey),已知可以与 Bart 的电路板配合使用,而且价格合理 – 目前 DigiKey 售价为 10 美元。Espressif ESP32 DevKitC 提供不同的模块,如下所述。
Espressif Systems 制作了许多不同的模块。它们对 Grbl_ESP32 的适用性说明如下。
您需要的是 WROOM 模块,而不是 WROVER。区别在于 WROVER 在金属罐内也有 PSRAM。Grbl_ESP32 不需要 PSRAM。它对于相机等应用很有用,但 Grbl_ESP32 不需要它。
有效的方法:
- ESP32-DevKitC 带 ESP-WROOM-32 模块 – 这是即将淘汰的旧版本。它运行良好,但很难买到,因为他们现在正在生产更新版本的核心 CPU 芯片。
- 带 ESP-WROOM-32D 模块的 ESP32-DevKitC-32D – 这是带有“D0WD”版 CPU 芯片的较新版本。它目前正在生产中,运行良好。它有一个集成的 PCB 天线。
- ESP32-DevKitC-32U 带 ESP-WROOM-32U 模块 – 这是与 -32D 相同的 CPU,但它没有集成 PCB 天线,而是有一个用于外部天线的 IPEX 连接器。如果您需要更好的 WiFi 范围,这可能会很有用。
- ESP32-DevKitC-32E 带 ESP-WROOM-32E 模块。它使用“D0WD-V3”芯片,这是撰写本文时最新的芯片。与“D0WD”芯片相比,它修复了一些错误,但这些错误对 Grbl_ESP32 来说可能都不是太大问题。PCB 天线。
- ESP32-DevKitC-32UE 带有 ESP-WROOM-32UE 模块 – 与 -U 类似,但带有外部天线连接器。
如果您要购买新的开发套件,您不妨购买最新的 -32E 或 -32UE,具体取决于您的天线需求。
不推荐的:
- ESP32-DevKitS 或 ESP32-DevKitS-R – DevKitS 未安装 ESP32 模块!它有弹簧针,因此您可以插入裸模块。这对于需要在将 ESP32 模块焊接到电路板之前对其进行预编程的工厂或需要测试不同模块的开发人员非常有用。(SR 变体适用于 WROVER 而不是 WROOM)。
- 任何带有“WROVER”的内容。参见上文。
- 任何带有“-S2”或“Saola”的芯片 – ESP32-S2 都是一款非常新的芯片,主要用于安全应用,因为它具有一些额外的加密加速器和其他外围设备。它比“经典”ESP32 模块多了一些 GPIO 引脚,这可能对 Grbl_ESP32 有用,但它只有一个 CPU 核心。Grbl_ESP32 目前使用两个 CPU 核心。有传言称即将推出双核 -S2 变体,但目前尚未上市。当它上市时,需要进行一些软件工作以适应硬件和 SDK 的变化。
- ESP32-DevKitC-S1 – 它具有 ESP32-SOLO-1 模块,这是 ESP32 CPU 的单核变体。它不适用于使用两个核心的 Grbl_Esp32。
您可以跳过此步骤,因为所有重要信息都在上面。包含此信息的原因是因为在订购页面上很难发现不同开发套件之间的差异。不同开发套件的规格列表看起来几乎相同。有时列出的唯一差异是对模块内芯片的模糊引用。
除了模块内常见的 CPU 芯片外,Espressif Systems 还生产了许多不同的 CPU 芯片。
ESP32 CPU 芯片变体的“D0WD”标识解释如下:
首字母“D”表示“双核”;单核变体为“S0WD”。
“0” 是片上 FLASH 的数量 – 我真正指的是“在 CPU 芯片上”,而不是通常的情况,即 FLASH 是位于 CPU 芯片本身之外但在金属封装模块内部的 SPI FLASH 芯片。有一种“D2WD”芯片变体,芯片上有 2 MB 的 FLASH – 但这种芯片没有模块。还有一种“U4WDH”,它有一个单核(U 可能代表单处理器?为什么不是 S?)和 4 MB 片上闪存。
我认为“WD”指的是 5mm x 5mm QFN 封装。还有一种替代封装“WDQ6”,即 6mm x 6mm QFN。
任何带有“-V3”后缀的内容都有上面提到的“ECO V3”错误修复。
最后,与“D0WD”式命名法完全不同的是,ESP32-PICO-V3 具有 2 个内核、4 MB 片上闪存,采用 7mm x 7mm LGA 封装。有一个专门的开发套件,采用更窄的“面包板友好型”外形尺寸 – 行间距看起来为 0.7 英寸。