RISC-V MCU 漫游 (7):黄紫色的 ESP32 之 ESP32-C2/C6

本期我们再来看看 ESP32-Cx 系列中的另外两款:C2 和 C6。

ESP32-C2 又有个名字叫 ESP8684。它的 CPU 主频和 SRAM 大小都要比 C3 低一点 (120MHz, 272KB),大概来到了跟 RP2040 差不多的水平。 GPIO 数量也更少,但封装大小和成本也相应的减小了 - 毕竟对于大多数场合可能用不到那么多 GPIO,比如做个机械键盘只需要用 [行数 + 列数] 个引脚做个扫描矩阵就行了,所以要什么自行车呢?

ESP32-C6 则是这个家族中的高配版,有着双核的处理器配置 - 实际上另一个核是低功耗模式用的 20MHz 的 LP 小核,有种 SG200x 的大核配 8051 小核的感觉。除此之外它还多了 802.11ax (20MHz non-AP) WiFi 6 和 Zigbee 支持,而 510KB 的 RAM 也可以说很能装了 - 对嵌入式而言,举个例子就是 Pine64 的开源智能手表 PineTime (nRF52832) 的固件 InfiniTime,也是把除 CJK 字体外的智能手表的几乎全部主要功能都塞进了这个大小里。


支持矩阵里对 C2 和 C6 的两款官方 DevKit 都测试了 FreeRTOS 和 Zephyr。其实评估板是不是 Espressif 官方的可能没那么重要,因为 ESP32 (包括 C) 系列都有提供封装好的现成模块,画个底板再按邮票孔贴上去就好了。Zephyr 对 ESP32 系列从 HAL 到刷写工具 (esptool.py 和 openocd) 都有完善主线支持,对于 C6 还完整支持了它的 LP 小核,可以通过 CONFIG_ULP_COPROC_ENABLED=y 编译选项开启。Zephyr 本身的编译流程基于官方的 west 工具也实现了一站式:

west build -p always -b esp32c6_devkitc samples/basic/sys_heap
west flash
west espressif monitor

需要在你的 ESP32-Cx 应用中移植 Zephyr? 拿一个板子的源码过来改一下 devicetree 就好。Zephyr 在 C2 和 C6 DevKit 上的具体刷写流程请参见我们的测试报告:ESP32-C2, ESP32-C6.

欢迎各位复现/吐槽丁丑小队的所有测试结果。

如果有对我们的测试方法/结果有任何建议/问题,欢迎直接在 GitHub 开 issue,或者在论坛 @ 我、回帖询问 :wink:

3 个赞