clignotante.ino

ESP8266 (módulo ESP-12E) · Archivo : clignotante.ino · Lenguaje : Arduino · Uso : Faire clignoter la LED du module ESP-12E

El LED azul del ESP-12E es activo en LOW: trampa clasica del primer sketch. millis() mantiene el bucle libre para Wi-Fi y el monitor imprime memoria libre en cada parpadeo.

Hardware necesario

Un módulo ESP-12E (ESP8266EX, Wi-Fi 2,4 GHz) montado en una placa NodeMCU / Wemos D1 mini, alimentada por micro-USB. Ninguno: basta el LED de usuario del módulo.

Cableado

Nada que cablear (LED en GPIO2/D4). Para un LED externo: pin Dx por 330 Ω a GND, alimentación por el micro-USB de la placa.

Funcionamiento

digitalWrite invierte LOW/HIGH porque el LED está cableado en activo-bajo. El bucle compara millis() con el último cambio, sin delay bloqueante. En el Arduino IDE, instale el paquete « esp8266 », elija « NodeMCU 1.0 (ESP-12E Module) » y suba (mantenga GPIO0 a LOW si falla). El ADC A0 lee 0-1 V (divisor NodeMCU: 0-3,3 V).

Para ir más lejos

Modulee el periodo con una LDR en A0 (sketch dedicado), o haga parpadear más rápido cuando cae el Wi-Fi.

clignotante.ino

// Clignotement non bloquant — LED bleue de l'ESP-12E (D4, active a LOW).
const unsigned long PERIODE = 500;

bool etat = false;
unsigned long precedent = 0;

void setup() {
  pinMode(BUILTIN_LED, OUTPUT);   // D4 = GPIO2
  Serial.begin(115200);
  Serial.println("\nClignotement demarre (LED inverse : ON = broche LOW)");
}

void loop() {
  unsigned long t = millis();
  if (t - precedent >= PERIODE) {
    precedent = t;
    etat = !etat;
    digitalWrite(BUILTIN_LED, etat ? LOW : HIGH);   // active a LOW !
    Serial.printf("%s — heap %u o, wifi %d dBm\n",
                  etat ? "ON " : "OFF", ESP.getFreeHeap(), WiFi.Rssi());
  }
}

← Volver a la ficha