ESP8266 - Faire clignoter plusieurs LED

Ce tutoriel vous explique comment programmer l'ESP8266 pour faire clignoter plusieurs LED simultanément, chacune à une fréquence différente, sans dépendre de la fonction de délai. Nous utiliserons trois LED comme exemple, mais vous pouvez ajuster le code pour gérer facilement plus de LED.

Préparation du matériel

1×ESP8266 NodeMCU
1×Micro USB Cable
1×LED
1×220 ohm resistor
1×Breadboard
1×Jumper Wires
1×(Optional) DC Power Jack
1×(Optional) ESP8266 Screw Terminal Adapter

Or you can buy the following sensor kits:

1×DIYables Sensor Kit (30 sensors/displays)
1×DIYables Sensor Kit (18 sensors/displays)
Divulgation : Certains des liens fournis dans cette section sont des liens affiliés Amazon. Nous pouvons recevoir une commission pour tout achat effectué via ces liens, sans coût supplémentaire pour vous. Nous vous remercions de votre soutien.

À propos des LED

Nous disposons d'un tutoriel spécifique sur les LED. Ce tutoriel contient des informations détaillées et des instructions étape par étape sur le brochage du matériel, le principe de fonctionnement, la connexion des fils à l'ESP8266, le code ESP8266... Pour en savoir plus, consultez le lien suivant :

Diagramme de câblage

Schéma de câblage de plusieurs LED ESP8266 NodeMCU

This image is created using Fritzing. Click to enlarge image

Voir plus dans l'agencement des broches de l'ESP8266 et comment alimenter l'ESP8266 et d'autres composants.

Code ESP8266 - Faire clignoter plusieurs LED

Pour faire clignoter plusieurs LED, nous ne pouvons pas utiliser la fonction delay(). Au lieu de cela, nous devons utiliser la fonction millis() et gérer les horodatages.

Gérer les horodatages tout en faisant clignoter plusieurs LED peut être difficile pour les débutants. Heureusement, la bibliothèque ezLED simplifie le processus de faire clignoter plusieurs LED en gérant les horodatages en interne. Cela élimine le besoin pour les utilisateurs de gérer les horodatages lors de l'utilisation de cette bibliothèque. De plus, vous pouvez améliorer la clarté et la concision du code en utilisant un tableau de LED.

/* * Ce code ESP8266 NodeMCU a été développé par newbiely.fr * Ce code ESP8266 NodeMCU est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp8266/esp8266-blink-multiple-led */ #include <ezLED.h> // ezLED library #define PIN_LED_1 D5 // The ESP8266 pin connected to LED 1 #define PIN_LED_2 D6 // The ESP8266 pin connected to LED 2 #define PIN_LED_3 D7 // The ESP8266 pin connected to LED 3 ezLED led1(PIN_LED_1); // create ezLED object that attach to pin PIN_LED_1 ezLED led2(PIN_LED_2); // create ezLED object that attach to pin PIN_LED_2 ezLED led3(PIN_LED_3); // create ezLED object that attach to pin PIN_LED_3 void setup() { Serial.begin(9600); led1.blink(500, 500); // 500ms ON, 500ms OFF, blink immediately led2.blink(200, 800); // 200ms ON, 800ms OFF, blink immediately led3.blink(200, 200); // 200ms ON, 200ms OFF, blink immediately } void loop() { led1.loop(); // MUST call the led1.loop() function in loop() led2.loop(); // MUST call the led2.loop() function in loop() led3.loop(); // MUST call the led3.loop() function in loop() // DO SOMETHING HERE }

Étapes rapides

Pour commencer avec ESP8266 sur Arduino IDE, suivez ces étapes :

  • Consultez le tutoriel comment configurer l'environnement pour ESP8266 sur Arduino IDE si c'est votre première utilisation d'ESP8266.
  • Connectez les composants selon le schéma fourni.
  • Connectez la carte ESP8266 à votre ordinateur via un câble USB.
  • Lancez l'Arduino IDE sur votre ordinateur.
  • Sélectionnez la carte ESP8266 et le port COM correspondant.
  • Cliquez sur l'icône Libraries dans la barre latérale gauche de l'Arduino IDE.
  • Recherchez "ezLED", puis trouvez la bibliothèque led par ArduinoGetStarted
  • Cliquez sur le bouton Install pour installer la bibliothèque ezLED.
Bibliothèque de LED ESP8266 NodeMCU
  • Copiez le code ci-dessus et collez-le dans l'IDE Arduino.
  • Compilez et téléchargez le code sur la carte ESP8266 en cliquant sur le bouton Upload dans l'IDE Arduino.
Comment télécharger le code ESP8266 NodeMCU sur Arduino IDE
  • Vérifiez l'état du LED.

Code ESP8266 - Faire clignoter plusieurs LED en utilisant un tableau

Nous pouvons optimiser le code ci-dessus en utilisant un tableau de LED. Le code ci-dessous utilise le tableau pour gérer les objets LED.

/* * Ce code ESP8266 NodeMCU a été développé par newbiely.fr * Ce code ESP8266 NodeMCU est mis à disposition du public sans aucune restriction. * Pour des instructions complètes et des schémas de câblage, veuillez visiter: * https://newbiely.fr/tutorials/esp8266/esp8266-blink-multiple-led */ #include <ezLED.h> // ezLED library #define NUM_LED 3 // three LEDs #define PIN_LED_1 D5 // The ESP8266 pin connected to LED 1 #define PIN_LED_2 D6 // The ESP8266 pin connected to LED 2 #define PIN_LED_3 D7 // The ESP8266 pin connected to LED 3 ezLED ledArray[NUM_LED] = { ezLED(PIN_LED_1), // create ezLED object that attach to pin PIN_LED_1 ezLED(PIN_LED_2), // create ezLED object that attach to pin PIN_LED_2 ezLED(PIN_LED_3) // create ezLED object that attach to pin PIN_LED_3 }; void setup() { Serial.begin(9600); ledArray[0].blink(500, 500); // 500ms ON, 500ms OFF, blink immediately ledArray[1].blink(200, 800); // 200ms ON, 800ms OFF, blink immediately ledArray[2].blink(200, 200); // 200ms ON, 200ms OFF, blink immediately } void loop() { for (int i = 0; i < NUM_LED; i++) ledArray[i].loop(); // MUST call the led.loop() function in loop() // DO SOMETHING HERE }

Pour le clignotement flexible, veuillez vous référer aux autres fonctions de la bibliothèque ezLED

Vidéo

※ OUR MESSAGES

  • Please feel free to share the link of this tutorial. However, Please do not use our content on any other websites. We invested a lot of effort and time to create the content, please respect our work!