docs: Update Get Started for ESP32-S31

This commit is contained in:
luweike
2026-08-13 11:44:10 +08:00
parent 867e4fc2d1
commit 4e96d91543
17 changed files with 115 additions and 55 deletions
@@ -19,8 +19,8 @@ ESP 芯片通常使用 UART 实现串口,并可以通过外部 USB-UART 桥接
硬件要求
=====================
{IDF_TARGET_USB_DP_GPIO:default="未更新!",esp32c3="19",esp32s3="20", esp32c6="13", esp32h2="27", esp32p4="25/27", esp32c5="14", esp32c61="13", esp32h4="14"}
{IDF_TARGET_USB_DM_GPIO:default="未更新!",esp32c3="18",esp32s3="19", esp32c6="12", esp32h2="26", esp32p4="24/26", esp32c5="13", esp32c61="12", esp32h4="13"}
{IDF_TARGET_USB_DP_GPIO:default="未更新!",esp32c3="19",esp32s3="20", esp32c6="13", esp32h2="27", esp32p4="25/27", esp32c5="14", esp32c61="13", esp32h4="14", esp32s31="34"}
{IDF_TARGET_USB_DM_GPIO:default="未更新!",esp32c3="18",esp32s3="19", esp32c6="12", esp32h2="26", esp32p4="24/26", esp32c5="13", esp32c61="12", esp32h4="13", esp32s31="33"}
将 {IDF_TARGET_NAME} 连接到 USB 端口,连接方式如下:
@@ -69,12 +69,10 @@ USB 串行/JTAG 控制器可以自动将 {IDF_TARGET_NAME} 置于下载模式。
限制
===========
{IDF_TARGET_BOOT_PIN:default = "未更新!", esp32c3 = "GPIO9", esp32s3 = "GPIO0", esp32c6 = "GPIO9"}
{IDF_TARGET_BOOT_PIN:default = "未更新!", esp32c3 = "GPIO9", esp32s3 = "GPIO0", esp32c6 = "GPIO9", esp32s31 = "GPIO61"}
USB 串行/JTAG 控制台功能存在一些限制,这些限制的影响程度各不相同,具体取决于开发中的应用程序类型,以及开发的工作流程。
{IDF_TARGET_BOOT_PIN:default = "未更新!", esp32c3 = "GPIO9", esp32s3 = "GPIO0", esp32c6 = "GPIO9"}
重新配置 USB 管脚
-----------------------
+17 -11
View File
@@ -3,28 +3,34 @@
.. code-block:: none
...
esptool --chip esp32s31 -p /dev/ttyUSB0 -b 460800 --before=default-reset --after=hard-reset write-flash --flash-mode dio --flash-freq 80m --flash-size 2MB 0x0 bootloader/bootloader.bin 0x8000 partition_table/partition-table.bin 0x10000 hello_world.bin
esptool v5.0.2
esptool --chip esp32s31 -p /dev/ttyUSB0 -b 460800 --before=default-reset --after=hard-reset --no-stub write-flash --flash-mode dio --flash-freq 80m --flash-size 2MB 0x2000 bootloader/bootloader.bin 0x8000 partition_table/partition-table.bin 0x10000 hello_world.bin
esptool v5.3.1
Connected to ESP32-S31 on /dev/ttyUSB0:
Chip type: ESP32-S31 (revision v0.0)
Features: Wi-Fi, BT 5 (LE), IEEE802.15.4, Dual Core, 240MHz, Embedded PSRAM
Features: Wi-Fi 6, BT 5.4 (LE), IEEE802.15.4, Dual Core + LP Core, 300MHz
Crystal frequency: 40MHz
MAC: f4:12:fa:87:c6:dc
MAC: 30:ed:a0:f3:dc:70
Stub flasher running.
Changing baud rate to 460800...
Changed.
Enabling default SPI flash mode...
Configuring flash size...
Flash will be erased from 0x00000000 to 0x00005fff...
Flash will be erased from 0x00008000 to 0x00008fff...
Flash will be erased from 0x00010000 to 0x00037fff...
Writing 'bootloader/bootloader.bin' at 0x00002000...
SHA digest in image updated.
Wrote 21280 bytes (13578 compressed) at 0x00000000 in 0.6 seconds (298.1 kbit/s).
Flash will be erased from 0x00002000 to 0x00007fff...
Wrote 21392 bytes at 0x00002000 in 0.9 seconds (193.6 kbit/s).
Hash of data verified.
Wrote 3072 bytes (103 compressed) at 0x00008000 in 0.1 seconds (315.1 kbit/s).
Writing 'partition_table/partition-table.bin' at 0x00008000...
Flash will be erased from 0x00008000 to 0x00008fff...
Wrote 3072 bytes at 0x00008000 in 0.1 seconds (192.1 kbit/s).
Hash of data verified.
Wrote 161744 bytes (90141 compressed) at 0x00010000 in 2.5 seconds (513.7 kbit/s).
Writing 'hello_world.bin' at 0x00010000...
Flash will be erased from 0x00010000 to 0x00034fff...
Wrote 149968 bytes at 0x00010000 in 6.3 seconds (191.7 kbit/s).
Hash of data verified.
Hard resetting via RTS pin...
@@ -141,20 +141,20 @@
{IDF_TARGET_NAME} 支持 USB 外设,无需外部 USB 至 UART 桥,即可烧录二进制文件。
{IDF_TARGET_USB_PIN_DM:default="尚未更新!", esp32c3="GPIO18", esp32s3="GPIO19", esp32s2="GPIO19", esp32c6="GPIO12", esp32h2="GPIO26", esp32p4="GPIO24/26", esp32c5="GPIO13", esp32c61="GPIO28"}
{IDF_TARGET_USB_PIN_DP:default="尚未更新!", esp32c3="GPIO19", esp32s3="GPIO20", esp32s2="GPIO20", esp32c6="GPIO13", esp32h2="GPIO27", esp32p4="GPIO25/27", esp32c5="GPIO14", esp32c61="GPIO29"}
{IDF_TARGET_USB_PIN_DM:default="尚未更新!", esp32c3="GPIO18", esp32s3="GPIO19", esp32s2="GPIO19", esp32c6="GPIO12", esp32h2="GPIO26", esp32p4="GPIO24/26", esp32c5="GPIO13", esp32c61="GPIO28", esp32s31="GPIO33"}
{IDF_TARGET_USB_PIN_DP:default="尚未更新!", esp32c3="GPIO19", esp32s3="GPIO20", esp32s2="GPIO20", esp32c6="GPIO13", esp32h2="GPIO27", esp32p4="GPIO25/27", esp32c5="GPIO14", esp32c61="GPIO29", esp32s31="GPIO34"}
{IDF_TARGET_NAME} 上的 USB 使用 **{IDF_TARGET_USB_PIN_DP}** 作为 **D+**, **{IDF_TARGET_USB_PIN_DM}** 作为 **D-**。
.. only:: SOC_USB_SERIAL_JTAG_SUPPORTED and not esp32s3 and not esp32p4
.. only:: SOC_USB_SERIAL_JTAG_SUPPORTED
.. note:: {IDF_TARGET_NAME} 仅支持 *USB CDC and JTAG*。
.. only:: not SOC_USB_OTG_SUPPORTED
.. note:: {IDF_TARGET_NAME} 仅支持 *USB CDC and JTAG*。
首次烧录需要手动设置 {IDF_TARGET_NAME} 进入下载模式。请按住 ``BOOT`` 按钮,同时按一下 ``RESET`` 按钮。之后,松开 ``BOOT`` 按钮。
.. only:: esp32s3
首次烧录需要手动设置 {IDF_TARGET_NAME} 进入下载模式。请按住 ``BOOT`` 按钮,同时按一下 ``RESET`` 按钮。之后,松开 ``BOOT`` 按钮。
有关 USB 串口/JTAG 的更多用法,请参阅 :doc:`USB_SERIAL_JTAG_CONSOLE <../api-guides/usb-serial-jtag-console>`。
.. only:: esp32s2
@@ -349,7 +349,7 @@ macOS 提供了 **屏幕** 命令,因此无需安装串口终端程序。
输出示例
^^^^^^^^^^^
{IDF_TARGET_STRAP_GPIO:default="[NEEDS TO BE UPDATED]", esp32="GPIO0", esp32s2="GPIO0", esp32s3="GPIO0", esp32c2="GPIO9", esp32c3="GPIO9", esp32c6="GPIO9", esp32h2="GPIO9", esp32p4="GPIO35", esp32c5="GPIO28", esp32c61="GPIO9"}
{IDF_TARGET_STRAP_GPIO:default="[NEEDS TO BE UPDATED]", esp32="GPIO0", esp32s2="GPIO0", esp32s3="GPIO0", esp32c2="GPIO9", esp32c3="GPIO9", esp32c6="GPIO9", esp32h2="GPIO9", esp32p4="GPIO35", esp32c5="GPIO28", esp32c61="GPIO9", esp32s31="GPIO61"}
以下是一个日志示例。如果没看到任何输出,请尝试重置开发板。
@@ -6,7 +6,7 @@
连接失败
-----------------
{IDF_TARGET_STRAP_GPIO:default="[NEEDS TO BE UPDATED]", esp32="GPIO0", esp32s2="GPIO0", esp32s3="GPIO0", esp32c2="GPIO9", esp32c3="GPIO9", esp32c6="GPIO9", esp32h2="GPIO9", esp32p4="GPIO35", esp32c5="GPIO28", esp32c61="GPIO9"}
{IDF_TARGET_STRAP_GPIO:default="[NEEDS TO BE UPDATED]", esp32="GPIO0", esp32s2="GPIO0", esp32s3="GPIO0", esp32c2="GPIO9", esp32c3="GPIO9", esp32c6="GPIO9", esp32h2="GPIO9", esp32p4="GPIO35", esp32c5="GPIO28", esp32c61="GPIO9", esp32s31="GPIO61"}
如果在运行给定命令时出现如“连接失败”这样的错误,造成该错误的原因之一可能是运行 ``esptool`` 时出现错误。 ``esptool`` 是构建系统调用的程序,用于重置芯片、与 ROM 引导加载器交互以及烧录固件的工具。可以按照以下步骤进行手动复位,轻松解决该问题。如果问题仍未解决,请参考 `esptool 故障排除 <https://docs.espressif.com/projects/esptool/en/latest/esp32/troubleshooting.html>`_ 获取更多信息。
+21
View File
@@ -43,6 +43,19 @@
* USB OTG 接口
* USB 串口/JTAG 控制器
.. only:: esp32s31
* 2.4 GHz Wi-Fi 6
* Bluetooth® 5.4 (LE)
* Bluetooth® Classic
* 802.15.4,支持 Thread 和 Zigbee 协议
* 高性能 RISC-V 32 位双核处理器
* 多种外设
* 内置安全硬件
* USB 2.0 高速 OTG 接口
* USB 串口/JTAG 控制器
* 以太网 MAC 接口
.. only:: esp32c3
* 2.4 GHz Wi-Fi
@@ -169,6 +182,14 @@
ESP-VoCat <https://docs.espressif.com/projects/esp-dev-kits/zh_CN/latest/esp32s3/esp-vocat/index.html>
ESP-DualKey <https://docs.espressif.com/projects/esp-dev-kits/zh_CN/latest/esp32s3/esp-dualkey/index.html>
.. only:: esp32s31
.. toctree::
:maxdepth: 1
ESP32-S31-Function-CoreBoard-1 <https://docs.espressif.com/projects/esp-dev-kits/zh_CN/latest/esp32s31/esp32-s31-function-coreboard-1/index.html>
ESP32-S31-Korvo-1 <https://docs.espressif.com/projects/esp-dev-kits/zh_CN/latest/esp32s31/esp32-s31-korvo-1/index.html>
.. only:: esp32c2
.. toctree::
+2 -2
View File
@@ -1,6 +1,6 @@
{IDF_TARGET_FEATURES:default="[NEEDS TO BE UPDATED]", esp32="WiFi/BT/BLE, silicon revision 1, 2 MB external flash", esp32s2="WiFi, silicon revision 0, 2 MB external flash", esp32s3="This is esp32s3 chip with 2 CPU core(s), WiFi/BLE, silicon revision 0, 2 MB external flash", esp32c2="WiFi/BLE, silicon revision 0, 2 MB embedded flash", esp32c3="WiFi/BLE, silicon revision 0, 2 MB external flash", esp32c6="WiFi/BLE, 802.15.4 (Zigbee/Thread), silicon revision v0.0, 2 MB external flash", esp32h2="BLE, 802.15.4 (Zigbee/Thread), silicon revision v0.1, 2 MB external flash", esp32p4="silicon revision v0.0, 2 MB external flash", esp32c5="WiFi/BLE, 802.15.4 (Zigbee/Thread), silicon revision v1.0, 2 MB external flash", esp32c61="WiFi/BLE, silicon revision v1.0, 2 MB external flash"}
{IDF_TARGET_FEATURES:default="[NEEDS TO BE UPDATED]", esp32="WiFi/BT/BLE, silicon revision 1, 2 MB external flash", esp32s2="WiFi, silicon revision 0, 2 MB external flash", esp32s3="This is esp32s3 chip with 2 CPU core(s), WiFi/BLE, silicon revision 0, 2 MB external flash", esp32c2="WiFi/BLE, silicon revision 0, 2 MB embedded flash", esp32c3="WiFi/BLE, silicon revision 0, 2 MB external flash", esp32c6="WiFi/BLE, 802.15.4 (Zigbee/Thread), silicon revision v0.0, 2 MB external flash", esp32h2="BLE, 802.15.4 (Zigbee/Thread), silicon revision v0.1, 2 MB external flash", esp32p4="silicon revision v0.0, 2 MB external flash", esp32c5="WiFi/BLE, 802.15.4 (Zigbee/Thread), silicon revision v1.0, 2 MB external flash", esp32c61="WiFi/BLE, silicon revision v1.0, 2 MB external flash", esp32s31="WiFi/BT/BLE, 802.15.4 (Zigbee/Thread), silicon revision v0.0, 2 MB external flash"}
{IDF_TARGET_HEAP_SIZE:default="[NEEDS TO BE UPDATED]", esp32="298968", esp32s2="253900", esp32s3="390684", esp32c2="203888", esp32c3="337332", esp32c6="473816", esp32h2="268256", esp32p4="618848", esp32c5="348724", esp32c61="272868"}
{IDF_TARGET_HEAP_SIZE:default="[NEEDS TO BE UPDATED]", esp32="298968", esp32s2="253900", esp32s3="390684", esp32c2="203888", esp32c3="337332", esp32c6="473816", esp32h2="268256", esp32p4="618848", esp32c5="348724", esp32c61="272868", esp32s31="480544"}
编译项目
=========================
+3
View File
@@ -18,6 +18,7 @@ H/W 硬件参考
:esp32h2: 技术规格书 (PDF) <https://espressif.com/sites/default/files/documentation/esp32-h2_datasheet_cn.pdf>
:esp32c5: 技术规格书 (PDF) <https://espressif.com/sites/default/files/documentation/esp32-c5_datasheet_cn.pdf>
:esp32p4: 技术规格书 (PDF) <https://espressif.com/sites/default/files/documentation/esp32-p4_datasheet_cn.pdf>
:esp32s31: 技术规格书 (PDF) <https://espressif.com/sites/default/files/documentation/esp32-s31_datasheet_cn.pdf>
:esp32: 硬件设计指南 <https://docs.espressif.com/projects/esp-hardware-design-guidelines/zh_CN/latest/esp32/index.html>
:esp32s2: 硬件设计指南 <https://docs.espressif.com/projects/esp-hardware-design-guidelines/zh_CN/latest/esp32s2/index.html>
:esp32s3: 硬件设计指南 <https://docs.espressif.com/projects/esp-hardware-design-guidelines/zh_CN/latest/esp32s3/index.html>
@@ -28,6 +29,7 @@ H/W 硬件参考
:esp32h2: 硬件设计指南 <https://docs.espressif.com/projects/esp-hardware-design-guidelines/zh_CN/latest/esp32h2/index.html>
:esp32p4: 硬件设计指南 <https://docs.espressif.com/projects/esp-hardware-design-guidelines/zh_CN/latest/esp32p4/index.html>
:esp32c5: 硬件设计指南 <https://docs.espressif.com/projects/esp-hardware-design-guidelines/zh_CN/latest/esp32c5/index.html>
:esp32s31: 硬件设计指南 <https://docs.espressif.com/projects/esp-hardware-design-guidelines/zh_CN/latest/esp32s31/index.html>
:esp32: 芯片勘误表 <https://docs.espressif.com/projects/esp-chip-errata/zh_CN/latest/esp32/index.html>
:esp32s2: 芯片勘误表 <https://docs.espressif.com/projects/esp-chip-errata/zh_CN/latest/esp32s2/index.html>
:esp32s3: 芯片勘误表 <https://docs.espressif.com/projects/esp-chip-errata/zh_CN/latest/esp32s3/index.html>
@@ -36,6 +38,7 @@ H/W 硬件参考
:esp32c6: 芯片勘误表 <https://docs.espressif.com/projects/esp-chip-errata/zh_CN/latest/esp32c6/index.html>
:esp32c61: 芯片勘误表 <https://docs.espressif.com/projects/esp-chip-errata/zh_CN/latest/esp32c61/index.html>
:esp32h2: 芯片勘误表 <https://docs.espressif.com/projects/esp-chip-errata/zh_CN/latest/esp32h2/index.html>
:esp32s31: 芯片勘误表 <https://docs.espressif.com/projects/esp-chip-errata/zh_CN/latest/esp32s31/index.html>
芯片变型 <https://espressif.com/zh-hans/products/socs?id={IDF_TARGET_NAME}>
:not esp32p4: 模组 <https://www.espressif.com/zh-hans/products/modules?id={IDF_TARGET_NAME}>
开发板 <https://www.espressif.com/zh-hans/products/devkits?id={IDF_TARGET_NAME}>