我想通过软件将 esp32c3 放入第一阶段引导加载程序,或者更准确地说,通过设备上运行的应用程序将 esp32c3 放入第一阶段引导加载程序。
我已经阅读/尝试过这个link,但是从我在 esp idf sdk v5.1 中看到的来看,函数(
rtc_wdt_protect_off
,rtc_wdt_set_length_of_reset_signal
,...)不支持 esp32c3,仅适用于 esp32 和esp32s3.
我知道我可以创建一个“自己的”引导加载程序应用程序,该应用程序在第二阶段引导加载程序之后执行,它可以充当第一阶段引导加载程序,但我想通过 esp 第一阶段引导加载程序来完成此操作。
请记住,将设备放入第一阶段引导加载程序必须通过软件完成,不能选择硬件引脚设置。
可以这样完成,包括:
#include "soc/soc.h"
#include "soc/rtc_cntl_reg.h"
并添加以下行:
REG_WRITE(RTC_CNTL_OPTION1_REG, RTC_CNTL_FORCE_DOWNLOAD_BOOT);
esp_restart();
它将直接启动至 ROM 更新模式。 答案在这里找到:https://www.esp32.com/viewtopic.php?t=33180