# 硬件设计
[English]
------------------------------------------------------------------------
## 1. ESP32 中 I2S 信号管脚分布太散,是否可以配置集中⼀些,例如配置到 `GPIO5,GPIO18,GPIO23、GPIO19、GPIO22` 或者 `GPIO25、GPIO26、GPIO32、GPIO33` 管脚上?
* 所有 I2S 的 I/O 均可任意分配,需要注意有的 I/O 只能作为输⼊,请参考 [《ESP32 技术规格书》](https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_cn.pdf)最后⼀⻚。
更新时间:2022.4.22
------------------------------------------------------------------------
## 2. ESP32 在 Light Sleep 模式下如何避免 VDD3P3\_RTC 掉电?
* ESP32 进⼊ Light Sleep 模式后,pads powered by VDD3P3\_RTC 对应的 GPIO 的电平会被拉低,根本原因是进⼊ Light Sleep 后 RTC 掉电导致的。
* 使⽤函数`esp_sleep_pd_config(ESP_PD_DOMAIN_RTC_PERIPH, ESP_PD_OPTION_ON)`可维持 RTC 的供电。
更新时间:2022.4.22
------------------------------------------------------------------------
## 3. ESP32 管脚配置需要注意什么事项?
* 大部分数字外设可以通过 IO\_Matrix 配置到任意管脚。SDIO,SPI 高速,以及模拟类相关功能只能通过 IO\_MUX 切换使用。
* 管脚使用注意事项可参考 [" GPIO & RTC GPIO"](https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/api-reference/peripherals/gpio.html?highlight=gpio#gpio-rtc-gpio)
说明。
**注:** Strapping 管脚默认电平,详情参考芯片数据手册; - GPIO34 〜
39(⽤作输⼊ IO,并且无上下拉功能); - GPIO6 〜 GPIO11 被 Flash
引脚占⽤; - GPIO1 和 GPIO3 是 UART0 的 TX 和 RX 引脚,是⽆法配置的;
- 其中带有 PSRAM 的模组, GPIO16 和 GPIO17 会被 PSRAM 占⽤。
更新时间:2022.4.22
------------------------------------------------------------------------
## 4. ESP32系列芯片 footprint 提供?
* 可以参考[模组设计](https://www.espressif.com/zh-hans/support/documents/technical-documents?keys=%E6%A8%A1%E7%BB%84%E5%8F%82%E8%80%83),下载芯片对应的模组参考设计,里面有管脚封装设计。
更新时间:2022.4.22
------------------------------------------------------------------------
## 5. 使用 ESP32-S2 芯片,用了 DVP camera 接口后还能接入语音吗?
- ESP32-S2 的 LCD 接口、DVP camera 接口和 I2S接口共用一套硬件资源,只能支持其中一个。
更新时间:2022.4.22
------------------------------------------------------------------------
## 6. 使用 ESP32 模块,使用 GPIO0、GPIO4 作为 I2C 信号接口,需要注意什么?
* GPIO0 做 I2C 信号接口需要加上拉,烧写的时候只要保证上电时 GPIO0 能拉低,之后就可以释放了,GPIO0 不需要一直拉低,只有下载的时候需要拉低。
更新时间:2022.4.22
------------------------------------------------------------------------
## 7. ESP32 的外接 Flash 占用了 GPIO6 \~ 11 ,这 6 个 IO 是否还能作为 SPI 来使用?
* ESP32 的外接 Flash 占用了 GPIO6 \~ 11 ,这 6 个 IO 就不能再作为 SPI
来使用了。
更新时间:2022.4.22
------------------------------------------------------------------------
## 8. ESP32-D2WD 外接 PSRAM 的参考设计?
* 建议参考 ESP32-PICO-D4 外接 PSRAM 的设计 [datasheet V7 章节](https://www.espressif.com/sites/default/files/documentation/esp32-pico-d4_datasheet_cn.pdf)。
**注:** ESP32-D2WD 是 1.8 V Flash,所以外部 VDD\_SDIO 需要加电阻和电容,并且连接 1.8 V PSRAM。
更新时间:2022.4.22
------------------------------------------------------------------------
## 9. ESP32 是否可以用 PWM 或 DAC 来播放音乐?
* ESP32 可以用 PWM 或 DAC 来播放音乐,推荐用于提示音播放,可基于 [esp-adf/examples/player/pipeline\_play\_mp3\_with\_dac\_or\_pwm](https://github.com/espressif/esp-adf/tree/master/examples/player/pipeline_play_mp3_with_dac_or_pwm) 例程进行测试。
更新时间:2022.4.22
------------------------------------------------------------------------
## 10. 为什么 ESP32 模组和 ESP32 芯片的建议工作电压范围不一样?
* 因为模组要考虑 Flash 的电压,所以 ESP32 模组的建议工作电压会更高一些。
* 更多信息可对比查看模组和芯片的[技术规格书](https://www.espressif.com/zh-hans/support/documents/technical-documents)。
更新时间:2022.4.22
------------------------------------------------------------------------
## 11. ESP32 以太网 RMII 时钟选择有哪些?
* 设计上建议使用外接晶振与 GPIO0 输入的方式,设计时需要注意 GPIO0 上电状态。
* 详细数据可以参考文档 [配置 MAC 与 PHY](https://docs.espressif.com/projects/esp-idf/en/latest/esp32/api-reference/network/esp_eth.html#configure-mac-and-phy)。
更新时间:2022.4.22
------------------------------------------------------------------------
## 12. ESP32-LyraT 开发板扬声器接口规格?
* 接口使用 PH-2A 规格连接器。
更新时间:2022.4.22
------------------------------------------------------------------------
## 13. 基于 ESP32 设计的模组,哪些引脚无法被用户使用?
* ESP32-WROOM 系列模组,IO6 - IO11 为 flash 引脚,作为 flash 通信使⽤,不可被用户使用。
* ESP32-WROVER 系列模组,GPIO16 和 GPIO17 被模组 PSRAM 占⽤,不可被用户使用。
* 此外,ESP32 有 5 个 Strapping 引脚,在使⽤时需要额外注意,具体细节请参考 [ESP32 技术规格书](https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_cn.pdf)。
更新时间:2022.4.22
------------------------------------------------------------------------
## 14. ESP32 如何使用管脚复位芯片?
* ESP32 的复位可使用 CHIP\_PU 管脚。当 CHIP\_PU 为低电平时,复位电平 (VIL\_nRST ) 要求足够低,并且持续一段时间。注意:该管脚不可浮空。可参见[《ESP32 硬件设计指南》](https://www.espressif.com/sites/default/files/documentation/esp32_hardware_design_guidelines_cn.pdf)中的 "2.2.2 复位" 章节说明。
更新时间:2022.4.22
------------------------------------------------------------------------
## 15. 使用 ESP32 GPIO 34~GPIO39 是否可作为 UART 的 RX ?
* GPIO 34~GPIO39 作为接收使用,可应用 UART 的 RX 。
更新时间:2022.4.22
------------------------------------------------------------------------
## 16. ESP32 模组外接 32 KHz 晶振参考设计?
* 请参考 [ESP32 硬件设计指南](https://www.espressif.com/sites/default/files/documentation/esp32_hardware_design_guidelines_cn.pdf/) V2.4.2 章节。
更新时间:2022.4.22
------------------------------------------------------------------------
## 17. ESP32 模组 Flash 是否支持 80 MHz 的 QIO 模式?
* ESP32 模组可以同时支持 Flash mode: QIO 和 Flash speed: 80 MHz。
* 使用 QIO 模式建议使用在二级 Bootlaoder 中开启,因为部分 Flash 状态寄存器默认 QE 未使能。
更新时间:2022.4.22
------------------------------------------------------------------------
## 18. 如何配置 ESP32 以太网的 RMII 同步时钟?
* 请下载 [esp-idf/examples/ethernet/basic](https://github.com/espressif/esp-idf/tree/release/v4.4/examples/ethernet/basic) 例程进行测试。
* IP101 PHY 芯片在 GPIO0 输出 CLK 时会出现网络不稳定的现象,所以推荐 PHY 外接 50 MHz 晶振, GPIO0 作为输入。
* 由于 GPIO0 的特殊性, 所以需要配置 IO 控制 PHY 的使能管脚。
* 请阅读 [配置 MAC 和 PHY](https://docs.espressif.com/projects/esp-idf/zh_CN/latest/esp32/api-reference/network/esp_eth.html#configure-mac-and-phy)。
* 可参考 [SCH\_ESP32-ETHERNET-KIT 原理图设计](https://dl.espressif.com/dl/schematics/SCH_ESP32-ETHERNET-KIT_A_V1.1_20190711.pdf)。
更新时间:2022.4.22
------------------------------------------------------------------------
## 19. ESP-Skainet 有语音识别硬件设计参考吗?
* 请参考 [ESP32-Korvo V1.1 硬件参考设计](https://github.com/espressif/esp-skainet/blob/master/docs/zh_CN/hw-reference/esp32/user-guide-esp32-korvo-v1.1.md#2-%E7%A1%AC%E4%BB%B6%E5%8F%82%E8%80%83)。
更新时间:2022.4.22
------------------------------------------------------------------------
## 20. 使用 ESP32-MINI-1 模组,是否可提供 Altium Designer 的元件库?
* 我们的硬件原理图是在 PADS 中开发设计的,在[《ESP32-MINI-1参考设计》](https://www.espressif.com/sites/default/files/documentation/ESP32-MINI-1_V1.0_Reference_Design.zip)中有一个 ASC 的文件,可在 Altium Designer 里转换打开。
* 更多型号的模组的硬件设计资料可在 [技术文档](https://www.espressif.com/zh-hans/support/documents/technical-documents?keys=mini)中获取。
更新时间:2022.4.22
------------------------------------------------------------------------
## 21. ESP32-D2WD 芯片外接 PSRAM 软件配置注意事项是什么?
* 需要在 menuconfig 中使能 `CPU frequece 240 Mhz` 和 `RTC clock 80 Mhz` ,具体配置如下:
- menuconfig \-\--\ Serial flasher config\-\--\Flash SPI Speed(80 Mhz)
- Component config\-\-\--\CPU frequency(240 Mhz)
- Component config\-\-\--\ESP32 specific\-\-\--\\[\*\]Support for external , SPI-connected RAM
- Component config\-\-\--\ESP32 specific\-\-\-\-\-\--\SPI RAM config\-\-\--\Set RAM clock speed(80 Mhz clock speed)
更新时间:2022.4.22
------------------------------------------------------------------------
## 22. ESP32 芯片当 VDD 供电从 0 V 慢慢升到 3.3 V 时,芯片为何无法正常启动?
* 出现此问题是由于芯片上电时序不满足要求,时序要求当 VDD 达到 2.3 V 时,EN 电压不应超过 0.6 V。
* 但 VDD 上电时间过慢时,芯片 EN 端的 RC 电路将 EN 延时的功能就丧失了。
* 可以调整 RC 电路,增加电容,调整电阻,或是使用 Reset 芯片管控 EN 状态。
* 建议检测到供给 ESP32 的电压低于 2.3 V 时将 ESP32 的 EN 脚拉低。
* ESP32 上电时序说明参见 [《ESP32 技术规格书》](https://www.espressif.com/sites/default/files/documentation/esp32_datasheet_cn.pdf)。
更新时间:2022.4.22
------------------------------------------------------------------------
## 23. 使用 ESP32-WROOM-32D 模组,是否可以使用 GPIO12 用作其他功能?
* GPIO12 为 Strapping 管脚,控制 SPI Flash 的启动电压。ESP32-WROOM-32D 模组的 SPI Flash 启动电压为 3.3 V,因此在上电启动时 GPIO12 需要拉高。
* 若需要使用 GPIO12 用作其他功能,请使用 esptool 工具通过 [espefuse.py set\_flash\_voltage 3.3V](https://docs.espressif.com/projects/esptool/en/latest/esp32/espefuse/index.html?highlight=vdd_sdio#fixed-3-3v-vdd-sdio) 命令将 VDD\_SDIO 固定为 3.3 V,那么 GPIO12 将可以用作其他功能。
更新时间:2022.4.22
------------------------------------------------------------------------
## 24. ESP32-WROOM-32D 模组的外接 flash,是否可以不使用 GPIO6 \~ GPIO11 的接口?
* ESP32 共有 3 组 SPI(SPI、HSPI 和 VSPI)接口,可以通过 SPI0/1(HSPI/VSPI) 总线访问外部 flash。但接到其他脚(GPIO6\~GPIO11 以外的 GPIO)的外接 flash 不能跑程序,只能接收数据作存储。需要跑程序的 flash 只能接在 GPIO6\~GPIO11 接口上。
更新时间:2022.4.22
------------------------------------------------------------------------
## 25. ESP32 芯片设计模组,PCB 板是否需要加屏蔽盖?
* 除模组之外没有其他信号干扰就不需要加屏蔽盖,如果板子还有其他的信号干扰,比如 2g、3g、4g 或者 Wi-Fi、BT、Zigbee 等等建议加上屏蔽盖。
更新时间:2022.4.22