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.

Préparation du matériel

1×Arduino UNO R4 WiFi or Arduino UNO R4 Minima
1×Alternativement: DIYables STEM V4 IoT, Compatible with Arduino Uno R4 WiFi
1×Câble USB Type-A vers Type-C (pour PC USB-A)
1×Câble USB Type-C vers Type-C (pour PC USB-C)
1×LED Kit
1×LED (red)
1×LED Module
1×220Ω Resistor
1×Plaque d'essai
1×Fils de connexion
1×(Recommended) Shield à bornier à vis pour Arduino Uno R4
1×(Recommended) Shield plaque d'essai pour Arduino Uno R4
1×(Recommended) Boîtier pour Arduino Uno R4
1×(Recommended) Répartiteur d'alimentation pour Arduino Uno R4
1×(Recommended) Kit plaque de base prototypage et plaque d'essai pour Arduino Uno

Ou vous pouvez acheter les kits suivants:

1×Kit de Démarrage DIYables STEM V4 IoT (Arduino inclus)
1×Kit de Capteurs DIYables (30 capteurs/écrans)
1×Kit de Capteurs DIYables (18 capteurs/écrans)
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.

Note d'achat: Pour simplifier le processus de câblage, nous recommandons d'utiliser le LED Module, qui est livré avec une résistance intégrée.

À 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 !