Arduino UNO R4 - Faire clignoter plusieurs LED

L'Arduino UNO R4 fait clignoter plusieurs DEL.

Ce guide vous montre comment programmer un Arduino UNO R4 pour faire clignoter plusieurs LEDs à des fréquences différentes sans utiliser la fonction delay(). Il propose le code de deux façons :

Nous allons démontrer cela avec trois LED. Vous pouvez facilement ajuster cela pour deux LED, quatre LED ou plus.

À propos de la LED

Découvrez notre guide complet sur les diodes électroluminescentes (DEL), couvrant comment connecter le matériel, comment elles fonctionnent, comment les configurer avec Arduino UNO R4 et les étapes de programmation. Pour en savoir plus ici :

Diagramme de câblage

Schéma de câblage de plusieurs LED pour Arduino UNO R4

Cette image a été créée avec Fritzing. Cliquez pour agrandir l'image.

Voir Comment alimenter l'Arduino UNO R4..

Code Arduino UNO R4 - Faire clignoter plusieurs LEDs

Pour faire clignoter plusieurs LEDs en même temps, nous ne devrions pas utiliser la fonction delay(). Cette fonction empêche l'exécution du reste du code, ce qui signifie que nous ne pouvons pas faire clignoter différentes LEDs ensemble. Nous devrions plutôt utiliser la fonction millis() pour contrôler la temporisation.

Pour les débutants, la gestion des horodatages lors du clignotement de plusieurs LEDs peut être difficile. Heureusement, la bibliothèque ezLED library rend cela plus facile en se chargeant de la gestion des horodatages à l'intérieur de la bibliothèque. Cela signifie que les utilisateurs n'ont pas à se soucier de la gestion des horodatages eux-mêmes lors de l'utilisation de la bibliothèque. De plus, l'utilisation d'un groupe de LEDs peut rendre le code plus clair et plus concis.

/* * Ce code Arduino UNO R4 a été développé par newbiely.fr * Ce code Arduino UNO R4 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/arduino-uno-r4/arduino-uno-r4-blink-multiple-led */ #include <ezLED.h> // ezLED library by ArduinoGetStarted.com #define PIN_LED_1 7 // The Arduino UNO R4 pin connected to LED 1 #define PIN_LED_2 8 // The Arduino UNO R4 pin connected to LED 2 #define PIN_LED_3 9 // The Arduino UNO R4 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(800, 200); // 800ms ON, 200ms OFF, blink immediately led2.blink(500, 500); // 500ms ON, 500ms OFF, blink immediately led3.blink(500, 500, 500); // 500ms ON, 500ms OFF, blink after 500ms } 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

Suivez ces instructions étape par étape :

  • Si c'est la première fois que vous utilisez l'Arduino Uno R4 WiFi/Minima, reportez-vous au tutoriel sur la configuration de l'environnement pour l'Arduino Uno R4 WiFi/Minima dans l'IDE Arduino (BASE_URL/tutorials/arduino-uno-r4/arduino-uno-r4-software-installation).
  • Connectez l'Arduino Uno R4 aux DEL selon le schéma fourni.
  • Connectez la carte Arduino Uno R4 à votre ordinateur à l'aide d'un câble USB.
  • Lancez l'IDE Arduino sur votre ordinateur.
  • Sélectionnez la carte Arduino Uno R4 appropriée (par ex., Arduino Uno R4 WiFi) et le port COM.
  • Cliquez sur l'icône Libraries sur le côté gauche de l'IDE Arduino.
  • Tapez "ezLED" dans la zone de recherche et trouvez la bibliothèque LED créée par Arduino UNO R4GetStarted.
  • Cliquez sur le bouton Install pour ajouter la bibliothèque ezLED.
Bibliothèque LED pour Arduino UNO R4
  • Copier le code fourni et le coller dans l'IDE Arduino.
  • Pour charger le code sur une carte Arduino UNO R4, cliquez sur le bouton Upload dans l'IDE Arduino.
Comment téléverser le code Arduino UNO R4 dans l'IDE Arduino
  • Vérifiez si la LED est allumée ou éteinte.

Code Arduino UNO R4 - Faire clignoter plusieurs LEDs en utilisant un tableau

Nous pouvons améliorer le code ci-dessus en utilisant un tableau de LEDs. Le code ci-dessous utilise le tableau pour gérer des objets LED.

/* * Ce code Arduino UNO R4 a été développé par newbiely.fr * Ce code Arduino UNO R4 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/arduino-uno-r4/arduino-uno-r4-blink-multiple-led */ #include <ezLED.h> // ezLED library by ArduinoGetStarted.com #define NUM_LED 3 // three LEDs #define PIN_LED_1 7 // The Arduino UNO R4 pin connected to LED 1 #define PIN_LED_2 8 // The Arduino UNO R4 pin connected to LED 2 #define PIN_LED_3 9 // The Arduino UNO R4 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(800, 200); // 800ms ON, 200ms OFF, blink immediately ledArray[1].blink(500, 500); // 500ms ON, 500ms OFF, blink immediately ledArray[2].blink(500, 500, 500); // 500ms ON, 500ms OFF, blink after 500ms } void loop() { for (int i = 0; i < NUM_LED; i++) ledArray[i].loop(); // MUST call the led.loop() function in loop() // DO SOMETHING HERE }

En utilisant la bibliothèque ezLED, nous pouvons faire clignoter plusieurs LED de manière flexible comme ceci :

  • Faites clignoter plusieurs LEDs à des vitesses différentes.
  • Faites en sorte que plusieurs LEDs commencent à clignoter à des moments différents.
  • Faites en sorte que chaque LED clignote pendant une durée spécifique.
  • Faites en sorte que chaque LED clignote un certain nombre de fois.

Regardez le code d'exemple dans la bibliothèque.

Vidéo

※ NOS MESSAGES

  • N'hésitez pas à partager le lien de ce tutoriel. Cependant, veuillez ne pas utiliser notre contenu sur d'autres sites web. Nous avons investi beaucoup d'efforts et de temps pour créer ce contenu, veuillez respecter notre travail !