ESP32 设备有很多版本,命名法可能会造成混淆。此页面记录了我通过阅读各种 Espressif 文档所发现的内容。
在下文中,我将提到“芯片”、“模块”、“开发套件”和“电路板”。从最小到最大,我们有:
“芯片”——或片上系统或 SoC——是包含 ESP32 CPU 的最小封装。封装尺寸范围从 5×5 毫米到 7×7 毫米。它有 CPU、外围控制器、一些 RAM 和 ROM,也许——但通常不是——一些片上闪存。它的成本约为 1 美元。您很少会直接看到其中一个,因为它们通常位于带有金属罐的模块内。OEM 可以直接使用这些,但大多数人使用包含额外有用电路且更易于使用的模块版本。这是芯片的样子:
“模块”是一个金属封装的 ESP32 东西,大约 1″ x 0.7″,沿 3 个侧面有表面贴装焊针和天线 – 内置 PCB 天线或用于外部天线的“IPEX”连接器。金属外壳内部有一个 ESP32 CPU“片上系统”和一个用于程序存储的 SPI FLASH 芯片。模块由 Espressif Systems 制造。它们的价格约为 4 美元。除非您自己构建 PCB 并具有表面贴装组装能力,否则您不能直接使用模块。以下是具有不同天线选项的模块图片:
“Devkit”是指带有 ESP32 模块的小型 PCB,大约 2″ x 1″。它的两侧都有插头引脚,因此可以插入插头插座。它有一个 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
您需要 WROOM 模块,而不是 WROVER。不同的是,WROVER 的金属罐内还有 PSRAM。Grbl_ESP32 不需要 PSRAM。它对相机等应用很有用,但 Grbl_ESP32 不需要它。
DevKit/模块变体
有效的:
- 带有 ESP-WROOM-32 模块的 ESP32-DevKitC – 这是即将被淘汰的旧版本。它工作正常,但很难买到,因为他们现在正在制造核心 CPU 芯片的更新版本。
- 带有 ESP-WROOM-32D 模块的 ESP32-DevKitC-32D – 这是带有“D0WD”版本 CPU 芯片的较新版本。它正在生产中并且工作正常。它有一个集成的 PCB 天线。
- 带 ESP-WROOM-32U 模块的 ESP32-DevKitC-32U – 这是与 -32D 相同的 CPU,但它没有集成 PCB 天线,而是具有用于外部天线的 IPEX 连接器。如果您需要更好的 WiFi 范围,这可能会有用。
- ESP32-DevKitC-32E 与 ESP-WROOM-32E 模组。这使用了撰写本文时最新的“D0WD-V3”芯片。与“D0WD”芯片相比,它修复了一些错误,这些错误对 Grbl_ESP32 来说都不太重要。印刷电路板天线。
- 带 ESP-WROOM-32UE 模块的 ESP32-DevKitC-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。
ESP32 CPU 芯片名称架构(信息性)
你可以跳过这个,因为所有重要信息都在上面。包含此信息的原因是很难在订购页面上发现不同开发工具包之间的差异。列出的不同开发套件的规格看起来几乎相同。有时,列出的唯一区别是对模块内部芯片的模糊引用。
除了模块中常见的芯片外,乐鑫还生产许多不同的 CPU 芯片。
ESP32 CPU 芯片变体的“D0WD”名称解释如下:
首字母“D”表示“双核”;单核变体是“S0WD”。
“0”是片上 FLASH 的数量——我的意思是“在 CPU 芯片上”,而不是通常情况下 FLASH 是一个 SPI FLASH 芯片,它在 CPU 芯片本身之外,但在金属内部-固定模块。有一个“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 英寸。