low-power-deep-sleep.ino

PaperDIY Assembly Kit · Archivo : low-power-deep-sleep.ino · Lenguaje : C++ (Arduino) · Uso : Mettre l'ESP32-S3 en sommeil profond pour économiser la batterie entre deux lectures de capteur.

Gestiona el consumo de energía mediante el modo de sueño profundo del ESP32-S3.

El ESP32-S3 consume muy poco en sueño profundo. La batería de 140mAh requiere una gestión estricta. Despierte el MCU mediante un botón GPIO o un temporizador. Tenga en cuenta que la RAM volátil se pierde.

low-power-deep-sleep.ino

#include <Arduino.h>

#define BUTTON_PIN 0 // Example wake-up pin (Boot button often GPIO0)
#define LED_PIN 2    // Example indicator

void setup() {
  Serial.begin(115200);
  delay(1000);
  Serial.println("Waking up...");
  
  pinMode(LED_PIN, OUTPUT);
  digitalWrite(LED_PIN, HIGH);
  delay(100);
  digitalWrite(LED_PIN, LOW);

  // Configure Wake-up source
  esp_sleep_enable_ext0_wakeup(GPIO_NUM_0, 0); // Wake on LOW on GPIO0
  
  // Or timer wake-up (e.g., every 60 seconds)
  // esp_sleep_enable_timer_wakeup(60 * 1000000ULL);

  Serial.println("Going to deep sleep...");
  esp_deep_sleep_start();
}

void loop() {
  // This loop never runs after deep sleep setup in this example
}

← Volver a la ficha