原理图设计
ESP32-S3 系列芯片的核心电路只需要 20 个左右的电阻电容电感和 1 个无源晶振,以及 1 个 SPI flash。为了能够更好地保证 ESP32-S3 系列芯片的工作性能,本章将详细介绍 ESP32-S3 系列芯片的原理图设计。
下图所示为 ESP32-S3 的核心电路参考设计,您可以将它作为您的原理图设计的基础。
注意图 ESP32-S3 系列芯片参考设计原理图 显示的是四线、3.3 V、封装外 flash/PSRAM 的连接方式。
当使用八线、1.8 V 或 3.3 V、封装内或封装外 flash/PSRAM 时,GPIO33 ~ GPIO37 会被额外占用,不建议用于其他功能。
当使用封装内 flash/PSRAM 时,VDD_SPI 已经固定为 1.8 V 或 3.3 V,GPIO45 不再起作用。这种情况下,R1 可以选择性上件。其他情况下,按照表 IO Pad Status After Chip Initialization in the USB-OTG Download Boot Mode 选择 R1 是否上件。
八线、1.8 V、封装外 flash/PSRAM 的连接方式如图 ESP32-S3 封装外八线 1.8 V Flash/PSRAM 核心电路图 所示。
使用封装内 flash/PSRAM 时,无需上件 SPI 走线上的电阻,也无需关注 SPI 走线。
ESP32-S3 系列芯片的核心电路图的设计有以下重要组成部分:
下文将分别对这些部分进行描述。
电源
电源电路设计的通用要点有:
使用单电源供电时,建议供给 ESP32-S3 的电源电压为 3.3 V,最大输出电流至少 500 mA。
建议在总电源入口处添加 ESD 保护器件。
有关电源管脚的更多信息,请查看 ESP32-S3 系列芯片技术规格书 > 章节 电源。
数字电源
ESP32-S3 的 管脚 46 VDD3P3_CPU 为数字电源管脚,工作电压范围为 3.0 V ~ 3.6 V。建议在电路中靠近数字电源管脚处添加 0.1 μF 电容。
管脚 VDD_SPI 可配置输出 1.8 V 或 3.3 V(默认)给外部电路使用。建议靠近该电源管脚处添加 0.1 μF 及 1 μF 去耦电容。
当 VDD_SPI 处于 1.8 V 模式时,由 ESP32-S3 内部的 LDO 供电,能提供的典型电流值为 40 mA。
当 VDD_SPI 处于 3.3 V 模式时,由 VDD3P3_RTC 通过芯片内部的约 14 Ω 电阻后供电。因此 VDD_SPI 相对 VDD3P3_RTC 会有一定电压降。
注意
当使用 VDD_SPI 给封装内或封装外的 3.3 V flash/PSRAM 供电时,需要满足 flash/PSRAM 的工作电压要求,一般应保证电压在 3.0 V 以上。
VDD_SPI 电压有两种控制方式,具体取决于 EFUSE_VDD_SPI_FORCE 的值,如表 VDD_SPI 电压控制 所示。
EFUSE_VDD_SPI_FORCE |
GPIO45 |
EFUSE_VDD_SPI_FORCE |
电压 |
VDD_SPI 电源 |
---|---|---|---|---|
0 |
0 |
忽略 |
3.3 V |
VDD3P3_RTC 通过 RSPI 供电(默认) |
0 |
1 |
忽略 |
1.8 V |
Flash Voltage 稳压器 |
1 |
忽略 |
0 |
1.8 V |
Flash Voltage 稳压器 |
1 |
忽略 |
1 |
3.3 V |
VDD3P3_RTC 通过 RSPI 供电 |
VDD_SPI 也可以连接到外部电源,由外部电源输入供电。
ESP32-S3 系列芯片数字电源电路图如图 ESP32-S3 系列芯片数字电源电路图 所示。
模拟电源
ESP32-S3 的 VDDA 和 VDD3P3 管脚 为模拟电源管脚,工作电压范围为 3.0 V ~ 3.6 V。
对于 VDD3P3,当 ESP32-S3 工作在 TX 时,瞬间电流会加大,往往引起电源的轨道塌陷。所以在电路设计时建议在 VDD3P3 的电源走线上增加一个 10 μF 电容,该电容可与 1 μF 电容搭配使用。
建议在总电源入口添加另一个 10 μF 电容。如果总电源入口靠近 VDD3P3,可以合并仅使用一个 10 μF 电容。
另外,在靠近 VDD3P3 处还需添加 LC 滤波电路,用于抑制高频谐波,同时请注意该电感的额定电流最好在 500 mA 及以上。
其余电源管脚请参考图 ESP32-S3 系列芯片模拟电源电路图 放置相应的去耦电容。
RTC 电源
ESP32-S3 的 VDD3P3_RTC 管脚为 RTC 电源管脚,建议在电路中靠近该电源管脚处添加 0.1 μF 去耦电容。
请注意该电源不可以作为备用电源单独供电。
RTC 电源电路图如图 ESP32-S3 系列芯片 RTC 电源电路图 所示。
上电时序与复位
ESP32-S3 的 CHIP_PU 管脚为高电平时使能芯片,为低电平时复位芯片。
当 ESP32-S3 使用 3.3 V 系统电源供电时,电源轨需要一些时间才能稳定,之后才能拉高 CHIP_PU,激活芯片。因此,CHIP_PU 管脚上电要晚于系统电源 3.3 V 上电。
复位芯片时,复位电压 VIL_nRST 范围应为 (–0.3 ~ 0.25 × VDD) V。为防止外界干扰引起重启,CHIP_PU 管脚引线需尽量短一些。
图 ESP32-S3 系列芯片上电和复位时序图 为 ESP32-S3 系列芯片的上电、复位时序图。
上电和复位时序参数说明见表 上电和复位时序参数说明。
参数 |
说明 |
最小值 (µs) |
---|---|---|
tSTBL |
CHIP_PU 管脚上电晚于电源管脚上电的延时时间 |
50 |
tRST |
CHIP_PU 电平低于 VIL_nRST 从而复位芯片的时间 |
50 |
注意
CHIP_PU 管脚不可浮空。
为确保芯片上电和复位时序正常,一般采用的方式是在 CHIP_PU 管脚处增加 RC 延迟电路。RC 通常建议为 R = 10 kΩ,C = 1 μF,但具体数值仍需根据实际的电源特性配合芯片的上电、复位时序进行调整。
如果应用中存在以下场景:
电源缓慢上升或下降,例如电池充电;
需要频繁上下电的操作;
供电电源不稳定,例如光伏发电等。
此时,仅仅通过 RC 电路不一定能满足时序要求,有概率会导致芯片无法进入正常的工作模式。此时,需要增加一些额外的电路设计,比如:
增加复位芯片或者看门狗芯片,通常阈值为 3.0 V 左右;
通过按键或主控实现复位等。
Flash 及 PSRAM
ESP32-S3 系列芯片需配合封装内或封装外 flash 一起使用,用于存储应用的固件和数据。封装内 PSRAM 和封装外 RAM 非必需。
封装内 Flash 及 PSRAM
下面的表格列出了 ESP32-S3 与封装内 flash/PSRAM 的管脚对应关系。请注意这些芯片管脚最多连接一个 flash 和一个 PSRAM,也即当封装内仅有 flash 时,被 flash 占用的管脚只能再连接一个 PSRAM,不能用于其他功能;封装内仅有 PSRAM 时,被 PSRAM 占用的管脚只能再连接一个 flash;封装内有 flash 和 PSRAM 时,被占用的管脚不能再连接 flash 或 PSRAM。
ESP32-S3FN8/ESP32-S3FH4R2 |
封装内 Flash (Quad SPI) |
---|---|
SPICLK |
CLK |
SPICS0 |
CS# |
SPID |
DI |
SPIQ |
DO |
SPIWP |
WP# |
SPIHD |
HOLD# |
ESP32-S3R2/ESP32-S3FH4R2 |
封装内 PSRAM (2 MB, Quad SPI) |
---|---|
SPICLK |
CLK |
SPICS1 |
CE# |
SPID |
SI/SIO0 |
SPIQ |
SO/SIO1 |
SPIWP |
SIO2 |
SPIHD |
SIO3 |
ESP32-S3R8/ESP32-S3R8V |
封装内 PSRAM (8 MB, Octal SPI) |
---|---|
SPICLK |
CLK |
SPICS1 |
CE# |
SPID |
DQ0 |
SPIQ |
DQ1 |
SPIWP |
DQ2 |
SPIHD |
DQ3 |
GPIO33 |
DQ4 |
GPIO34 |
DQ5 |
GPIO35 |
DQ6 |
GPIO36 |
DQ7 |
GPIO37 |
DQS/DM |
封装外 Flash 及 PSRAM
ESP32-S3 支持最大 1 GB 封装外 flash 和 1 GB 封装外 RAM。 如果使用 VDD_SPI 输出电压供电,设计时请注意需根据设置的 VDD_SPI 模式 (1.8 V/3.3 V) 选择合适的封装外 flash/PSRAM。另外,建议 SPI 通信线上预留串联电阻(初始可使用 0 Ω),主要作用为降低驱动电流,减小对射频的干扰,调节时序,提升抗干扰能力等。
时钟源
ESP32-S3 外部可以有两个时钟源:
外置主晶振时钟源(必选)
目前 ESP32-S3 系列芯片固件仅支持 40 MHz 晶振。
ESP32-S3 的无源晶振部分电路如图 ESP32-S3 系列芯片无源晶振电路图。注意,选用的无源晶振自身精度需在 ±10 ppm。
XTAL_P 时钟走线上请放置一个串联元器件,可以是电阻或者电感,初始建议使用 24 nH,用来减弱晶振高频谐波对射频性能的影响,最终值需要通过测试后确认。
外部匹配电容 C1 和 C4 的初始值可参考以下公式来决定:
其中 CL (负载电容)的值可查看所选择晶振的规格书,Cstray 的值为 PCB 的寄生电容。C1 和 C4 的最终值需要通过对系统测试后进行调节确定。调试方法如下:
通过 认证测试工具,选择 TX tone 模式。
使用综测仪或者频谱仪查看 2.4 GHz 信号,解调得到实际频偏。
通过调整外置负载电容,把频偏调整到 ±10 ppm(建议)以内。
当中心频率偏正时,说明等效负载电容偏小,需要增加外置负载电容。
当中心频率偏负时,说明等效负载电容偏大,需要减小外置负载电容。
通常两个外置负载电容相等,在特殊情况下,也可以有略微差异。
备注
尽管 ESP32-S3 内部带有自校准功能,但是自身频偏过大(例如大于 ±10 ppm)、工作温度范围内稳定度不高等晶振本身的质量问题仍然会影响芯片的正常工作,导致射频指标性能下降。
建议晶振的幅值大于 500 mV。
如果出现功能性的 Wi-Fi 或蓝牙无法连接,排除软件原因后,可以采用上文中的方法,通过调节晶振的电容来保证频偏满足要求。
RTC 时钟源(可选)
ESP32-S3 支持外置 32.768 kHz 的无源晶振或者外部激励信号(如有源晶振)作为 RTC 时钟。使用外部 RTC 时钟源是为了使时间更准确,从而降低平均功耗,但对于功能没有任何影响。
外置 32.768 kHz 无源晶振的电路如图 ESP32-S3 系列芯片外置 32.768 kHz 无源晶振电路图 所示。
请注意 32.768 kHz 晶振选择要求:
等效内阻 (ESR) ≤ 70 kΩ。
两端负载电容值根据晶振的规格要求进行配置。
并联电阻 R 用于偏置晶振电路,电阻值要求 5 MΩ < R ≤ 10 MΩ。该电阻一般无需上件。
如果不需要该 RTC 时钟源,则 32.768 kHz 晶振的管脚也可配置为通用 GPIO 口使用。
外部时钟信号可通过一个隔直电容(20 pF 左右)输入至 XTAL 的 P 端,N 端悬空即可。外部激励信号的电路如图 ESP32-S3 外部激励信号电路图 所示。
外部激励信号参数如下表所示:
外部激励信号
振幅(Vpp,单位:V)
正弦波或方波
0.6 < Vpp < VDD
射频
射频电路
ESP32-S3 系列芯片的射频电路主要由三部分组成:PCB 板射频走线、芯片匹配电路、天线及其匹配电路。各部分电路应满足以下设计规范:
PCB 板射频走线:需进行 50 Ω 阻抗控制。
芯片匹配电路:请尽量靠近芯片放置,优先采用 CLC 结构。
CLC 结构主要用于阻抗匹配及谐波抑制,空间允许的情况下可以再加一组 LC。
芯片匹配电路如图 ESP32-S3 系列芯片射频匹配电路图 所示。
天线及其匹配电路:为保证辐射性能,建议天线的输入阻抗为 50 Ω 左右。为保险起见,推荐在靠近天线位置增加一组 π 型匹配电路,用于调节天线的输入阻抗。如果经过仿真可以确保天线阻抗点为 50 Ω 左右,并且空间较小,则可以不加天线端的匹配电路。
射频调试
射频匹配网络的参数值和 PCB 板有关,不要直接使用模组的匹配值,须按照下述射频调试进行确认。
图 ESP32-S3 射频调试示意图 展示了射频调试的大概过程。
将芯片匹配电路靠近芯片的端口定义为端口 1,将其靠近天线的端口定义为端口 2,则 S11 用来描述从端口 1 反射回来的信号功率与输入信号功率之比,如果匹配阻抗与芯片阻抗共轭,则传输性能最佳。S21 用来描述从端口 1 到端口 2 的信号功率传输损耗。如果 S11 接近芯片共轭阻抗点 (35+j0),且 S21 在 4.8 GHz 和 7.2 GHz 频率下小于 -35 dB,则匹配电路可满足传输要求。
将芯片匹配电路的两端分别接到综测仪上,测试其信号反射参数 S11 及传输参数 S21。调试该匹配电路中元件的数值,直至 S11 和 S21 满足上述要求。如果芯片的 PCB 板严格设计遵循章节 PCB 版图布局 里的规范,用户可以参考表 匹配电路元器件推荐数值范围 来调试该匹配电路。
位号 |
推荐数值范围 |
物料编号 |
---|---|---|
C11 |
1.2 ~ 1.8 pF |
GRM0335C1H1RXBA01D |
L2 |
2.4 ~ 3.0 nH |
LQP03TN2NXB02D |
C12 |
1.8 ~ 1.2 pF |
GRM0335C1H1RXBA01D |
如果射频贴片器件采用 0201 物料,靠近芯片端匹配电路的 PCB 设计需要采用短截线。如果天线输入阻抗不是 50 欧姆,建议额外增加一组射频匹配用于天线调谐。
如果使用或生产环境中对静电敏感,建议在靠近天线侧预留 ESD 保护器件。
备注
如果不需要使用射频功能,射频管脚可以悬空。
UART
U0TXD 线上建议串联 499 Ω 电阻用于抑制 80 MHz 谐波。
UART0 通常作为下载和 log 打印的串口。关于如何使用 UART0 进行下载,请参考章节 下载指导。
其他 UART 可以作为通信的串口,管脚可以通过软件配置到任意空闲的 GPIO 上。同样在 TX 线上建议预留串联电阻用于抑制谐波。
Strapping 管脚
芯片每次上电或复位时,都需要一些初始配置参数,如加载芯片的启动模式等。这些参数通过 strapping 管脚控制。复位放开后,strapping 管脚和普通 IO 管脚功能相同。
所有的 strapping 管脚信息,可参考 ESP32-S3 系列芯片技术规格书 > 章节 Strapping 管脚。下面主要介绍和启动模式有关的 strapping 管脚信息。
芯片复位释放后,GPIO0 和 GPIO46 共同决定启动模式,详见表 芯片启动模式控制。
启动模式 |
GPIO0 |
GPIO46 |
---|---|---|
默认配置 |
1(上拉) |
0(下拉) |
SPI Boot(默认) |
1 |
任意值 |
Joint Download Boot 1 |
0 |
0 |
无效组合 2 |
0 |
1 |
1 Joint Download Boot 模式支持下列几种下载方式:
USB Download Boot:
USB-Serial-JTAG Download Boot
USB-OTG Download Boot
UART Download Boot
2 该组合会触发意外行为,应当避免。
Strapping 管脚的时序参数包括 建立时间 和 保持时间。更多信息,详见图 Strapping 管脚的时序参数图 和表 Strapping 管脚的时序参数说明。
参数 |
说明 |
最小值 (ms) |
---|---|---|
tSU |
建立时间,即拉高 CHIP_PU 激活芯片前,电源轨达到稳定所需的时间 |
0 |
tH |
保持时间,即 CHIP_PU 已拉高、strapping 管脚变为普通 IO 管脚开始工作前,可读取 strapping 管脚值的时间 |
3 |
注意
不要在 GPIO0 管脚处添加较大的电容,以免影响芯片上电启动。
GPIO
ESP32-S3 系列芯片通过 IO MUX 表格或者 GPIO 交换矩阵功能来配置 GPIO。IO MUX 表格中是默认的外设管脚配置,GPIO 交换矩阵用于将可以配置的外设信号传输至 GPIO 管脚。更多关于 IO MUX 和 GPIO 交换矩阵的信息,请参考 ESP32-S3 技术参考手册 > 章节 IO MUX 和 GPIO 交换矩阵。
部分外设的 GPIO 管脚是固定的,部分是可以任意配置的,具体信息请参考 ESP32-S3 系列芯片技术规格书 > 章节 外设管脚分配。
使用 GPIO 时,请注意:
Strapping 管脚的上电状态。
请注意 GPIO 复位后的默认配置,详见表 IO MUX 管脚功能。建议对处于高阻态的管脚配置上拉或下拉,或在软件初始化时开启管脚自带的上下拉,以避免不必要的耗电。
避免使用 flash/PSRAM 占用的管脚。
上电过程中,部分管脚会有毛刺,详见表 芯片上电过程中的管脚毛刺。
在启用 USB-OTG Download Boot 模式时,部分管脚会有电平输出,详见表 IO Pad Status After Chip Initialization in the USB-OTG Download Boot Mode。
SPICLK_N、SPICLK_P、GPIO33 ~ GPIO37 属于同样的电源域,因此,如果使用八线 1.8 V 的 flash/PSRAM,SPICLK_P 和 SPICLK_N 也属于 1.8 V 电源域。
Deep-sleep 模式下只能控制电源域为 VDD3P3_RTC 的 GPIO。
管脚序号 |
管脚名称 |
管脚类型 |
供电管脚 |
复位时 |
复位后 |
IO MUX |
RTC |
模拟 |
---|---|---|---|---|---|---|---|---|
1 |
LNA_IN |
Analog |
||||||
2 |
VDD3P3 |
Power |
||||||
3 |
VDD3P3 |
Power |
||||||
4 |
CHIP_PU |
Analog |
VDD3P3_RTC |
|||||
5 |
GPIO0 |
IO |
VDD3P3_RTC |
IE, WPU |
IE, WPU |
IO MUX |
RTC |
|
6 |
GPIO1 |
IO |
VDD3P3_RTC |
IE |
IE |
IO MUX |
RTC |
Analog |
7 |
GPIO2 |
IO |
VDD3P3_RTC |
IE |
IE |
IO MUX |
RTC |
Analog |
8 |
GPIO3 |
IO |
VDD3P3_RTC |
IE |
IE |
IO MUX |
RTC |
Analog |
9 |
GPIO4 |
IO |
VDD3P3_RTC |
IO MUX |
RTC |
Analog |
||
10 |
GPIO5 |
IO |
VDD3P3_RTC |
IO MUX |
RTC |
Analog |
||
11 |
GPIO6 |
IO |
VDD3P3_RTC |
IO MUX |
RTC |
Analog |
||
12 |
GPIO7 |
IO |
VDD3P3_RTC |
IO MUX |
RTC |
Analog |
||
13 |
GPIO8 |
IO |
VDD3P3_RTC |
IO MUX |
RTC |
Analog |
||
14 |
GPIO9 |
IO |
VDD3P3_RTC |
IE |
IO MUX |
RTC |
Analog |
|
15 |
GPIO10 |
IO |
VDD3P3_RTC |
IE |
IO MUX |
RTC |
Analog |
|
16 |
GPIO11 |
IO |
VDD3P3_RTC |
IE |
IO MUX |
RTC |
Analog |
|
17 |
GPIO12 |
IO |
VDD3P3_RTC |
IE |
IO MUX |
RTC |
Analog |
|
18 |
GPIO13 |
IO |
VDD3P3_RTC |
IE |
IO MUX |
RTC |
Analog |
|
19 |
GPIO14 |
IO |
VDD3P3_RTC |
IE |
IO MUX |
RTC |
Analog |
|
20 |
VDD3P3_RTC |
Power |
||||||
21 |
XTAL_32K_P |
IO |
VDD3P3_RTC |
IO MUX |
RTC |
Analog |
||
22 |
XTAL_32K_N |
IO |
VDD3P3_RTC |
IO MUX |
RTC |
Analog |
||
23 |
GPIO17 |
IO |
VDD3P3_RTC |
IE |
IO MUX |
RTC |
Analog |
|
24 |
GPIO18 |
IO |
VDD3P3_RTC |
IE |
IO MUX |
RTC |
Analog |
|
25 |
GPIO19 |
IO |
VDD3P3_RTC |
IO MUX |
RTC |
Analog |
||
26 |
GPIO20 |
IO |
VDD3P3_RTC |
USB_PU |
USB_PU |
IO MUX |
RTC |
Analog |
27 |
GPIO21 |
IO |
VDD3P3_RTC |
IO MUX |
RTC |
|||
28 |
SPICS1 |
IO |
VDD_SPI |
IE, WPU |
IE, WPU |
IO MUX |
||
29 |
VDD_SPI |
Power |
||||||
30 |
SPIHD |
IO |
VDD_SPI |
IE, WPU |
IE, WPU |
IO MUX |
||
31 |
SPIWP |
IO |
VDD_SPI |
IE, WPU |
IE, WPU |
IO MUX |
||
32 |
SPICS0 |
IO |
VDD_SPI |
IE, WPU |
IE, WPU |
IO MUX |
||
33 |
SPICLK |
IO |
VDD_SPI |
IE, WPU |
IE, WPU |
IO MUX |
||
34 |
SPIQ |
IO |
VDD_SPI |
IE, WPU |
IE, WPU |
IO MUX |
||
35 |
SPID |
IO |
VDD_SPI |
IE, WPU |
IE, WPU |
IO MUX |
||
36 |
SPICLK_N |
IO |
VDD_SPI / VDD3P3_CPU |
IE |
IE |
IO MUX |
||
37 |
SPICLK_P |
IO |
VDD_SPI / VDD3P3_CPU |
IE |
IE |
IO MUX |
||
38 |
GPIO33 |
IO |
VDD_SPI / VDD3P3_CPU |
IE |
IO MUX |
|||
39 |
GPIO34 |
IO |
VDD_SPI / VDD3P3_CPU |
IE |
IO MUX |
|||
40 |
GPIO35 |
IO |
VDD_SPI / VDD3P3_CPU |
IE |
IO MUX |
|||
41 |
GPIO36 |
IO |
VDD_SPI / VDD3P3_CPU |
IE |
IO MUX |
|||
42 |
GPIO37 |
IO |
VDD_SPI / VDD3P3_CPU |
IE |
IO MUX |
|||
43 |
GPIO38 |
IO |
VDD3P3_CPU |
IE |
IO MUX |
|||
44 |
MTCK |
IO |
VDD3P3_CPU |
IE |
IO MUX |
|||
45 |
MTDO |
IO |
VDD3P3_CPU |
IE |
IO MUX |
|||
46 |
VDD3P3_CPU |
Power |
||||||
47 |
MTDI |
IO |
VDD3P3_CPU |
IE |
IO MUX |
|||
48 |
MTMS |
IO |
VDD3P3_CPU |
IE |
IO MUX |
|||
49 |
U0TXD |
IO |
VDD3P3_CPU |
IE, WPU |
IE, WPU |
IO MUX |
||
50 |
U0RXD |
IO |
VDD3P3_CPU |
IE, WPU |
IE, WPU |
IO MUX |
||
51 |
GPIO45 |
IO |
VDD3P3_CPU |
IE, WPD |
IE, WPD |
IO MUX |
||
52 |
GPIO46 |
IO |
VDD3P3_CPU |
IE, WPD |
IE, WPD |
IO MUX |
||
53 |
XTAL_N |
Analog |
||||||
54 |
XTAL_P |
Analog |
||||||
55 |
VDDA |
Power |
||||||
56 |
VDDA |
Power |
||||||
57 |
GND |
Power |
IE – 输入使能
WPU – 内部弱上拉电阻使能
WPD – 内部弱下拉电阻使能
USB_PU – USB 上拉电阻使能
USB 管脚(GPIO19 和 GPIO20)默认开启 USB 功能,此时管脚是否上拉由 USB 上拉电阻决定。USB 上拉电阻由 USB_SERIAL_JTAG_DP/DM_PULLUP 控制,具体阻值可通过 USB_SERIAL_JTAG_PULLUP_VALUE 位控制,详见 ESP32-S3 技术参考手册 > 章节 USB 串口/JTAG 控制器。
USB 管脚关闭 USB 功能时,用作普通 GPIO,默认禁用管脚内部弱上下拉电阻,可通过 IO_MUX_FUN_WPU/WPD 配置。
管脚名称 |
毛刺类型 3 |
典型持续时间 (µs) |
---|---|---|
GPIO1 |
低电平毛刺 |
60 |
GPIO2 |
低电平毛刺 |
60 |
GPIO3 |
低电平毛刺 |
60 |
GPIO4 |
低电平毛刺 |
60 |
GPIO5 |
低电平毛刺 |
60 |
GPIO6 |
低电平毛刺 |
60 |
GPIO7 |
低电平毛刺 |
60 |
GPIO8 |
低电平毛刺 |
60 |
GPIO9 |
低电平毛刺 |
60 |
GPIO10 |
低电平毛刺 |
60 |
GPIO11 |
低电平毛刺 |
60 |
GPIO12 |
低电平毛刺 |
60 |
GPIO13 |
低电平毛刺 |
60 |
GPIO14 |
低电平毛刺 |
60 |
XTAL_32K_P |
低电平毛刺 |
60 |
XTAL_32K_N |
低电平毛刺 |
60 |
GPIO17 |
低电平毛刺 |
60 |
GPIO18 |
低电平毛刺/高电平毛刺 |
60 |
GPIO19 |
低电平毛刺/高电平毛刺 4 |
60 |
GPIO20 |
下拉毛刺/高电平毛刺 4 |
60 |
ADC
使用 ADC 功能时,请靠近管脚添加 0.1 μF 的对地滤波电容,精度会更准确一些。
推荐优先使用 ADC1。
ADC 经硬件校准和 软件校准 后的结果如以下列表所示。如需更高的精度,可选用其他方法自行校准。
当 ATTEN=0,有效测量范围为 0 ~ 850 mV 时,总误差为 ±5 mV。
当 ATTEN=1,有效测量范围为 0 ~ 1100 mV, esp32c6= 时,总误差为 ±6 mV。
当 ATTEN=2,有效测量范围为 0 ~ 1600 mV 时,总误差为 ±10 mV。
当 ATTEN=3,有效测量范围为 0 ~ 2900 mV 时,总误差为 ±50 mV。
SDIO
ESP32-S3 系列芯片只有一个 SD/MMC 主机控制器,不能用做从机。
SDIO 接口可以通过软件配置到任意空闲的 GPIO 上,请在 SDIO GPIO 管脚处添加上拉电阻,建议每根线上预留一个串联的电阻。
USB
ESP32-S3 系列芯片带有一个集成了收发器的全速 USB On-The-Go (OTG) 外设,符合 USB 2.0 规范。
ESP32-S3 系列芯片集成了一个 USB 串口/JTAG 控制器,作为兼容 USB 2.0 全速模式的设备。
GPIO19 和 GPIO20 可以分别作为 USB 的 D- 和 D+,线上建议预留串联电阻(初始值可为 0 Ω)和对地电容(初始可不上件),并注意靠近芯片端放置。
请注意 USB_D+ 管脚会输出一些电平,因此请添加上拉来确定初始的高电平。
ESP32-S3 系列芯片也支持通过 USB 进行下载和 log 打印,下载指导请参考章节 下载指导。
在启用 USB-OTG Download Boot 模式时,芯片上电后会在 ROM 中初始化用于连接外部 PHY 的 IO 焊盘,初始化后各 IO 焊盘状态如下:
IO 焊盘 |
输入/输出模式 |
电平状态 |
---|---|---|
VP (MTMS) |
INPUT |
– |
VM (MTDI) |
INPUT |
– |
RCV (GPIO21) |
INPUT |
– |
OEN (MTDO) |
OUTPUT |
HIGH |
VPO (MTCK) |
OUTPUT |
LOW |
VMO(GPIO38) |
OUTPUT |
LOW |
若无需使用 USB-OTG Download Boot 模式, 可烧写 eFuse 位 EFUSE_DIS_USB_OTG_DOWNLOAD_MODE 禁用该模式,以避免 IO 状态的变化。
触摸传感器
使用 TOUCH 功能时,建议靠近芯片侧预留串联电阻,用于减小线上的耦合噪声和干扰,也可加强 ESD 保护。该阻值建议 470 Ω 到 2 kΩ,推荐 510 Ω。具体值还需根据产品实际测试效果而定。
ESP32-S3 系列芯片的触摸传感器同时还支持防水和数字滤波等功能。注意只有 GPIO14 (TOUCH14) 可以驱动屏蔽电极。