Arduino - Faire clignoter plusieurs LED

Ce tutoriel vous apprend à programmer un Arduino pour faire clignoter simultanément plusieurs LED sans utiliser la fonction de délai. Le tutoriel fournit le code de deux manières :

Nous utiliserons trois LED comme exemples. Vous pouvez facilement le modifier pour l'adapter à deux LED, quatre LED, ou même plus.

Préparation du matériel

1×Arduino Uno
1×USB 2.0 cable type A/B
1×LED
1×220 ohm resistor
1×Breadboard
1×Jumper Wires
1×(Optional) 9V Power Adapter for Arduino
1×(Recommended) Screw Terminal Block Shield for Arduino Uno
1×(Optional) Transparent Acrylic Enclosure For Arduino Uno

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 détaillé sur les LED incluant le schéma des broches, le principe de fonctionnement, le câblage Arduino, et les instructions de code. En savoir plus ici :

Diagramme de câblage

Schéma de câblage de plusieurs LED Arduino

This image is created using Fritzing. Click to enlarge image

Code Arduino - Faire Clignoter Plusieurs LED

Pour faire clignoter plusieurs LED simultanément, nous ne pouvons pas nous fier à la fonction delay(). Cela est dû au fait que l'utilisation de delay() bloque l'exécution d'autres codes, nous empêchant de faire clignoter plusieurs LED en même temps. Au lieu de cela, nous utilisons la fonction millis() pour gérer efficacement les horodatages.

Pour les débutants, gérer les horodatages tout en faisant clignoter plusieurs LED peut être difficile. Heureusement, la bibliothèque ezLED simplifie ce processus en gérant les horodatages de manière interne. Cela enlève le fardeau de la gestion des horodatages aux utilisateurs lors de l'utilisation de la bibliothèque. De plus, utiliser un tableau de LED peut améliorer la clarté et la concision du code.

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

  • Faites le câblage comme sur l'image ci-dessus.
  • Connectez la carte Arduino à votre PC via un câble USB.
  • Ouvrez l'Arduino IDE sur votre PC.
  • Sélectionnez la bonne carte Arduino (par exemple, Arduino Uno) et le port COM.
  • Cliquez sur l'icône des Bibliothèques située sur la barre gauche de l'Arduino IDE.
  • Recherchez "ezLED", puis trouvez la bibliothèque led par ArduinoGetStarted.
  • Cliquez sur le bouton Installer pour installer la bibliothèque ezLED.
Bibliothèque de LED pour Arduino
  • Copiez le code ci-dessus et collez-le dans l'IDE Arduino.
  • Compilez et téléchargez le code sur la carte Arduino en cliquant sur le bouton Upload de l'IDE Arduino.
Comment télécharger le code Arduino sur Arduino IDE
  • Vérifiez l'état de la LED.

Code Arduino - Faire clignoter plusieurs LED en utilisant un tableau

Nous pouvons améliorer le code ci-dessus en utilisant un tableau de LED. Le code suivant utilise ce tableau pour gérer les objets LED.

/* * Ce code Arduino a été développé par newbiely.fr * Ce code Arduino 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/arduino-blink-multiple-led */ #include <ezLED.h> // ezLED library by ArduinoGetStarted.com #define NUM_LED 3 // three LEDs #define PIN_LED_1 7 // The Arduino pin connected to LED 1 #define PIN_LED_2 8 // The Arduino pin connected to LED 2 #define PIN_LED_3 9 // The Arduino 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(800, 200); // 800ms 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 }

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

  • Faites clignoter plusieurs LED avec des fréquences différentes
  • Faites clignoter plusieurs LED avec des moments de départ différents
  • Faites clignoter chaque LED pendant une période de temps
  • Faites clignoter chaque LED un certain nombre de fois (cycle)

Consultez le code exemple dans la bibliothèque.

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!