# SD 上拉需求

[English]

乐鑫硬件产品适用于多种场景，这些场景可能需要不同的管脚上拉状态。因此，要调整某些产品的特定管脚上拉状态，为 SD 总线提供所需的上拉电阻。

ESP32-S3 使用 SPI 或 SDMMC 控制器与 SD 卡通信时，需要满足 SD 卡的上拉需求。当 SD 卡在 SPI 模式或 1 位 SD 模式下运行时，SD 总线的 CMD 和 DATA (DAT0 - DAT3) 线必须通过 10 kΩ 电阻上拉。SD 卡和 SDIO 设备也应在上述所有管脚（无论是否连接到主机）上有上拉电阻，以防设备进入错误状态。

本文档涵盖以下章节内容：

- 兼容性概述 - 简要介绍乐鑫产品管脚的默认上拉状态与 SD 总线所需状态之间的兼容性

- 解决方案 - 解决兼容性问题的方案

- 相关信息 - 其他相关信息

## 兼容性概述

本节概述了在使用安全数字输入输出 (SDIO) 时可能出现的兼容性问题。SD 总线需要连接上拉电阻，因此要妥善解决与主机设备及从机设备有关的兼容性问题。下面每个问题都有相应解决方案的链接，主机设备和从机设备的解决方案可能有所不同。

### 片上系统 (SoCs)

ESP32-S3 SDMMC 主机控制器允许 SD 接口信号使用所有 GPIO。但建议避免使用 strapping GPIO、带内部弱下拉的 GPIO 以及通常用于其他用途的 GPIO，以防出现冲突。

- GPIO0（strapping 管脚）

- GPIO45、GPIO46（strapping 管脚，内部弱下拉）

- GPIO26 - GPIO32（通常用于 SPI flash 和 PSRAM）

- GPIO33 - GPIO37（用于带有八线 SPI flash 或八线 PSRAM 的芯片和模组）

- GPIO43、GPIO44（默认用于 UART0 的 GPIO）

- GPIO19、GPIO20（默认用于 USB 的 GPIO）

### 开发板

- ESP32-S3-DevKitC-1

  > - 无上拉电阻

- ESP32-S3-USB-OTG

  > - 该开发板可在单线和四线 SD 模式或 SPI 模式下使用。

  > - 在 GPIO 33-38 上提供所需的上拉电阻。

- ESP32-S3-EYE

  > - 该开发板仅限于单线 SD 模式下使用。

  > - 在 GPIO 38-40 上提供所需的上拉电阻。

## 解决方案

### 无上拉电阻

如果所使用的开发板没有上拉电阻，可以执行以下操作：

- 如果主机设备和从机设备在不同的开发板上，将其中一块开发板换为带有上拉电阻的开发板。如需了解哪些乐鑫开发板带有上拉电阻，请参阅 开发板。

- 用一个 10 kΩ 的电阻将每个需要上拉的管脚连接到 VDD，从而附加外部上拉电阻。

## 相关信息

### 内部上拉和 strapping 需求

使用外部电阻始终是更优选择。乐鑫产品中的内部弱上拉和下拉电阻启用后可以代替外部电阻，但此解决方案并不能保证可靠的 SDIO 通信。

通常不建议将 strapping 管脚重复用于 SDIO 功能。SD 和 strapping 管脚的上拉、下拉需求可能会相互冲突。有关 {IDF_TARGET} strapping 管脚的详细信息，请参阅技术规格书。

此文档对您有帮助吗？

- 反馈已收到，谢谢！
- 如果您有其他意见，欢迎填写乐鑫文档反馈表。

- 我们重视您的反馈。
- 您可以填写乐鑫文档反馈表告诉我们如何改进该文档。