Commande séquentielle de 4 diodes LED avec Arduino Uno

Dans cette activité de découverte proposée par Electro & Robot, nous allons commander l’allumage et l’extinction de quatre (04) diodes LED en utilisant une carte programmable Arduino Uno à base d'un microcontrôleur de type ATmega328P selon un ordre précis. Au début, les quatre (04) diodes LED sont éteintes, ensuite, dans l'ordre, chaque diode s'allume pendant 500ms, ensuite s'éteint et la suivante ne s'allumera qu'après 500ms (nous avons défini ce temps comme un temps de repos). Suivant cette logique, la première diode LED s'allume puis s'éteint, puis la deuxième diode, puis la troisième et enfin la quatrième s'allume et s'éteint avant que le cycle redémarre de nouveau.

Pour réaliser cette simulation, nous commençons par simuler ce montage sous la solution de simulation électronique SimulIDE. Cette simulation nous permettra de vérifier le bon fonctionnement de ce circuit avant de le réaliser en grandeur nature avec une vraie carte Arduino. Pour cela, lançons la solution SimulIDE et modélisons ensemble le montage électrique ci-dessous :

Schéma d'un montage pour commande séquentielle à base de 4 diodes LED avec une carte Arduino Uno

Modélisation "Commande séquentielle de 4 diodes LED avec Arduino Uno" sous simulIDE

Comme vous le montre la capture ci-dessus, vous pouvez créer le même montage sous la solution SimulIDE :

Modélisation du montage Arduino Nano avec une seule LED sous la solution SimulIDE

Si vous avez des difficultés à modéliser le montage ci-dessous, vous pouvez faire référence à la liste de composants ci-dessous pour les ajouter dans votre projet. Vous aurez besoin donc de :

  • Une carte programmable à base d'un microcontrôleur Arduino Uno de la famille des cartes Arduino. Cette carte est disponible dans la bibliothèque de la solution de simulation sous le nom "Uno" sous la catégorie "Arduino". L'image ci-dessous nous présente son icône :

La carte Arduino Uno sous SimulIDE

  • Quatre (04) diodes LED pour les allumer et les éteindre suivant l'ordonnancement de notre programme prévu. Ces diodes seront connectées aux ports 10 à 13 de la carte Arduino Uno comme nous le constatons dans notre schéma de montage. Ce composant nous le retrouvons dans la bibliothèque de composants sous le nom "led" comme nous le montre la capture ca ci-dessous :

Retrouver la diode LED sous SimulIDE

  • Plusieurs résistances électriques au nombre de 4 pour limiter l'intensité du courant traversant les diodes LED et les protéger contre tout risque de détérioration. Chaque résistance sera configurée à une valeur de 330Ω. Ce composant est disponible dans la bibliothèque des composants sous le nom "Resistance" dans la sous-catégorie "Resistors" comme nous le présente cette capture ci-dessous :

Ajouter uner résistance sous SimulIDE

  • Et finalement, une mise à la masse. Ce point de référence 0V est disponible dans la bibliothèque sous le nom "Masse (0 V)" sous la catégorie "Sources". L'image ci-dessous nous démontre cette icône :

Mise à la masse (0 V) sous SimulIDE

Ainsi, nous venons de terminer le montage de notre circuit électrique, qui n'est que l'étape de la partie matérielle (appelée aussi la partie physique). Pour faire fonctionner ce montage et réaliser la séquence décrite dans l'énoncé de cette activité, nous aurons besoin d'un code que nous allons injecter dans la carte programmable pour le faire allumer et avancer. Pour ce fait, écrivons ensemble le code ci-dessous sous la solution Arduino IDE :

void setup() // débuter la configuration des ports
{         
  pinMode(10, OUTPUT);    // Initialise la pin 10 pour notre diode LED
  pinMode(11, OUTPUT);    // Initialise la pin 11 pour notre diode LED
  pinMode(12, OUTPUT);    // Initialise la pin 12 pour notre diode LED
  pinMode(13, OUTPUT);    // Initialise la pin 13 pour notre diode LED
}

void loop() // début de la fonction loop (boucle sans fin)
{

  //Allumer puis éteindre port par port de 10 à 13 dans une boucle itérative
  for(int p=10;p<=13;p++){
    digitalWrite(p, HIGH);
    delay(500);
    digitalWrite(p, LOW);
    delay(500);
  }
}

Et voilà, la fenêtre de notre éditeur Arduino IDE devrait se présenter comme illustré ci-dessous :

Code source "Commande séquentielle de 4 diodes LED" sous Arduino IDE

Et pour tester finalement notre code que nous venons de l'écrire sous Ardiuno IDE sous la solution SimulIDE, vous devez le vérifier pour confirmer qu'aucune erreur n'est présente et le compiler ensuite pour exporter le fichier binaire compilé que nous allons importer ensuite dans notre carte virtuelle. Pour faire cela, vous pouvez suivre les étapes requises comme nous le détaillons ci-dessous :

  • Depuis l'éditeur Arduino IDE, choisissez le sous-menu Vérifier/Compiler dans le menu Croquis :

Compiler/Vérifier sous Arduino IDE

  • Ensuite exporter les fichiers binaires de ce code à partir du sous-menu Exporter les binaires compilés depuis le menu principal Croquis. Cette action nous permettra de générer le fichier .hex que nous allons charger par la suite dans la carte Arduino sous la solution :

Générer le fichie .hex sous Arduino IDE

  • Maintenant, vous pouvez localiser le fichier dans le répertoire build de votre projet (par exemple : les projets Arduinos sont stockés par défaut dans le dossier Document sous Windows). Une fois retrouvé, copiez son chemin d'accès complet pour le charger comme firmware sous simulIDE :

Listes des fichiers compilés dans le répertoire "build"

  • Et en dernière étape, charger sous la solution SimulIDE ce fichier .hex, qui représente le firmware de notre carte Arduino (comme nous le montre la capture ci-dessous)

Propriété de la carte Arduino Uno sous SimulIDE

Pour vérifier cela, vous pouvez éditer les propriétés de la carte et checker le chemin complet du fichier .hex dans la fenêtre de paramètres de la carte :

Propriété de la carte de notre Arduino Uno sous SimulIDE

 

Maintenant, que tout est modélisé pour notre montage et paramétré pour notre carte, vous pouvez lancer le mode simulation en temps réel sous simulIDE.

Simulation en temps réel sous simulIDE

Pour initier le simulateur en temps réel, une fois que nous avons terminé les étapes précédentes, vous pouvez lancer la simulation depuis le bouton "Start Simulation", qui est disponible dans la barre des menus rapides de l'application.

Pour rappel,  l'image ci-dessous vous présente les deux boutons disponibles pour le mode simulation; Start, Pause & Stop simulation, que nous retrouvons dans l'interface de la solution SimulIDE ainsi que l'état du simulateur  :

Barre du menu simulation sous la solution SimulIDE

À noter : Si vous lancez le simulateur et qu'une erreur bloque son bon exécution, un message d'erreur s'affichera automatiquement dans la fenêtre "Output" que nous retrouvons sous la zone schématique de notre projet.

Exécution du code et visualisation du résultat

En respectant les consignes de cette activité, et si aucune erreur ne vient interrompre l’exécution de notre solution une fois que nous avons initié la simulation sous simulIDE, les diodes LED commence à s'allumet et à s'éteindre une par une en respectant l'intervalle de 500ms entre chaque diode; comme présenté dans la vidéo ci-dessous.

Conclusion

Nous venons de modéliser, sous la solution SimulIDE, une solution à base de la carte Arduino Uno intitulée Commande séquentielle de 4 diodes LED avec Arduino Uno.

Durant cette activité, nous avons écrit un code, compilé et exporté le fichier .hex, le fichier binaire depuis la solution Arduino IDE, puis nous avons chargé ce fichier sous forme d'un firmware depuis les paramètres de la carte Uno sous la solution de simulation pour tester notre montage.

Comme une suite à cette activité, nous vous recommandons de réaliser ce montage sur une carte réelle, que vous pouvez vous procurer facilement sur le marché des DIY (DIY pour Do It Yourself; pour l'abréviation en français, fais-le toi-même). Manipulez directement les différents composants, codez et testez la séquence des quatre diodes LED. Et surtout, observez comment fonctionne cette carte afin de mieux vous familiariser avec le monde Arduino.


📝 La dernière modification de cette page a été faite le 18 July 2026 par Electro & Robot