Difficulté :
Durée :
Février 2017 , par Techno_fabrik
Commander plusieurs LEDs avec ARDUINO
LE PROJET
Commander deux LEDs avec un module ARDUINO UNO. Nous voulons que les deux LEDs s'allument, clignotent, puis s'éteignent.
Matériel
carte Arduino (Uno / Mega)
2 LEDs de couleur
2 résistance de 220 Ohms
PRÉREQUIS :
Connaissance des risques électriques. Montage réalisable par tous. Notion d'électronique et bases en programmation.
RÉALISATION
ETAPE 1 :
Se munir du matériel adéquat et vérifier le bon fonctionnement de celui-ci.
ETAPE 2 :
Relier chacune des LEDs à une résistance. Connecter la broche positive au pin '10' (resp. '11' ) et la broche négative au pin 'GND'.
PROGRAMME ( codé en C) :
// -------------------------------- COMMANDE 2 LEDs ARDUINO -----------------------------------------
// Matériel : 2 leds, 2 résistances 220 Ohms , fils de connections
// Objectif : Commander 2 leds
// allumer les deux leds puis les eteindre
// enfin les faire clignoter l'une après l'autre et recommencer
// Date de réalisation 20/01/2017
// Réalisé par TechnoFABRIK
// ********************************** VARIABLES & BIBLIOTHEQUES *********************************************
// Dans cette partie , nous déclarerons nos variables, et bibliothèques utilisées pour le programme
// RMQ : nous n'avons pas besoin de bibliothèques pour ce programme, qui utilise les fonctions premières de l'arduino
int led1 = 10; // nous choisissons une variable, ici led1 et led2 qui représenterons les sorties au pin 10 et 9 de la carte arduino
int led2 = 9;
//*********************************** PARTIE INITIALISATION *******************************************
// La partie void setup() permet d'initialiser la carte .
void setup() {
pinMode(led1,OUTPUT);// Les pin 10 et 9 sont initialisés en SORTIES
pinMode(led2,OUTPUT);
digitalWrite(led1,LOW);// les pin 10 et 9 sont initialisés à l'état BAS , c'est à dire 0V.
digitalWrite(led2,LOW);
}
//*********************************** PARTIE BOUCLE *******************************************
// La partie void loop() va répéter en boucle les commandes demandées
void loop() {
digitalWrite(led1,HIGH); // on allume les deux leds, la carte recoit cette information et alimente les pin 10 et 9 , ou sont reliés nos LEDS et les allument
digitalWrite(led2,HIGH);
delay(1000); // on demande un delay de x millisecond, ici 1 seconde, entre la commande ci-dessus et la suivante
for (int i = 0; i<15;i++) // cette boucle permet de répéter 15 fois la commande qui lui est confié ci-aprés : le clignotement s'effectue en allumant une led puis en l'éteignant .
{
digitalWrite(led1,HIGH);
digitalWrite(led2,LOW);
delay(75);
digitalWrite(led1,LOW);
digitalWrite(led2,HIGH);
delay(75);
}
// on remet les leds à l'état bas avant de recommencer
digitalWrite(led1,LOW);
digitalWrite(led2,LOW);
delay (1000);
}