ESP.deepSleep() Wemos D1 mini

Pin RST w pracującym ESP8266 ma zawsze stan wysoki. Jeśli podamy mu stan niski zrestartuje mikrokontroler.
Jeśli wprowadzimy ESP8266 w stan głębokiego uśpienia za pomocą metody ESP.deepSleep(czas w mikrosekundach) po upływie podanego przez nas czasu mikrokontroler wyśle na GPIO16 stan niski. Jeśli fizycznie połączymy Reset z GPIO 16 mikrokontroler zostanie zresetowany. To cała idea wybudzania ESP8266 z głębokiego uśpienia po zadanym czasie.

Kod

Pamiętajmy, że na czas wysyłania kodu RST z GPIO16 nie może być połączony.

#include <Arduino.h>

#define LED D1

void setup() {

pinMode(LED, OUTPUT);

// 15 sekund mrugania diody
for (int i = 0; i < 15; i++) {
  digitalWrite(LED, LOW);
  delay(500);
  digitalWrite(LED, HIGH);
  delay(500);
  }

// 15 sekund uśpienia
  ESP.deepSleep(15e6);
}

void loop() {
}
Połączenie

Pobór prądu
Mruganie ~ 68mA
Głębokie uśpienie ~ 0,125 mA

Linki

Dodaj komentarz