Я очень новичок в работе с Arduino и любыми другими схемами.
Я пытаюсь настроить плату ESP32 для запуска с внешним триггером с помощью команды esp_sleep_enable_ext0_wakeup
void setup(){
int MY_PIN = 13;
pinMode(MY_PIN, INPUT_PULLUP);
int reading = digitalRead(MY_PIN);
if(reading == 1) {
esp_sleep_enable_ext0_wakeup(GPIO_NUM_13,0);
}
else {
esp_sleep_enable_ext0_wakeup(GPIO_NUM_13,1);
}
// I want the board to wake up every time the state of the switch changes.
esp_deep_sleep_start();
}
У меня проблемы с этим. Пробуждение не происходит, когда я этого ожидаю. Я предполагаю, что это связано с использованием внешнего подтягивающего резистора. Я не подключил один.
Есть ли способ использовать внутренний подтягивающий резистор для этой цели?
Буду признателен всем, кто сможет объяснить, как это работает в целом.
Документация гласит:
@ note Эта функция не изменяет конфигурацию контактов. Пин-код настраивается в esp_sleep_start непосредственно перед переходом в спящий режим.
Может быть, мне нужно правильно настроить его с esp_sleep_pd_config
. Может ли это быть причиной того, что нагрузочный резистор не работает?