跳转到内容

PSRAM

此组件在 ESP32 模块/开发板上可用时启用并配置 PSRAM。 某些组件需要 PSRAM,而其他组件可能将其用于可选功能。在任何情况下,都需要显式配置 - 这是与以前版本的 ESPHome 的变化。

PSRAM 在 ESP32 以外的平台上不可用。

# 示例配置项
psram:
mode: octal
speed: 80MHz
  • mode (Optional): 定义 PSRAM 应使用的操作模式。quadoctalhex 之一。 ESP32、ESP32-C5、ESP32-S2 默认为 quad,ESP32-P4 默认为 hex。ESP32-S3 没有默认值,需要设置此选项。 请参阅下面的注释。

  • speed (Optional, int): PSRAM 应运行的速度。40MHz(默认)、80MHz120MHz 之一。

  • enable_ecc (Optional, bool): 对于八线模式,为 PSRAM 启用 ECC(纠错码)(默认关闭)。 ECC 是一种检测和纠正内存中单比特错误的方法。它会将可用的 PSRAM 大小和速度减少 1/16,但也增加了某些 ESP32 模块的额定温度范围。

  • disabled (Optional, bool): 不要尝试初始化 PSRAM。如果配置的某个组件自动加载 psram,但 ESP32 模块没有 PSRAM,并且您需要将其中一个 PSRAM 控制线用于其他用途,例如以太网,则需要此项。默认为 false

  • ignore_not_found (Optional, bool): 当为 true(默认)时,固件忽略 PSRAM 初始化失败并继续启动。 当为 false 时,其他组件可以配置更大的 WiFi 缓冲区以加快数据传输,但 PSRAM 必须可用,否则设备将无法启动。

ESP32、ESP32-C5 和 ESP32-S2 的 PSRAM 仅在 quad 模式下可用,而 ESP32-P4 仅支持 hex 模式。这些是使用这些变体时的默认值。对于 ESP32-S3,mode 选项是必需的,必须设置为 quadoctal。 通常在 ESP32-S3 模块上,2MB PSRAM 将使用四线模式,而 8 或 16MB 将使用八线模式,但请查看您使用的模块的数据手册以确定。

WARNING

如果您为您的开发板选择了错误的模式,PSRAM 将无法工作。

  • 并非所有 ESP32 模块都有可用的 PSRAM。如果不确定,请查阅模块的数据手册。
  • 并非所有模块都支持所有模式和速度。
  • 八线模式不支持 120MHz,除非使用 ESP-IDF 且在 ESP-IDF 平台 高级配置 中启用了 enable_idf_experimental_features
  • 配置不支持的速度通常会导致 PSRAM 以默认速度运行。