SIK Experiment Guide for the Arduino 101/Genuino 101 Board (French)
This Tutorial is Retired!
This tutorial covers concepts or technologies that are no longer current. It's still here for you to read and enjoy, but may not be as useful as our newest tutorials.
Expérience 3 : Piloter une LED RVB
Introduction
Vous savez ce qui est encore plus amusant qu'une LED qui clignote ? Une LED qui change de couleur. Dans ce circuit, vous allez apprendre à utiliser une LED RVB pour créer des combinaisons de couleurs uniques. Selon la luminosité de la diode, quasiment toutes les couleurs sont possibles !
Composants nécessaires
Vous aurez besoin des composants suivants :
- 1 plaque Breadboard
- 1 carte Arduino 101 ou Genuino 101
- 1 LED RVB à cathode commune
- 3 résistances 100 Ω
- 6 cavaliers
Vous n'avez pas le SIK 101 ?
Pour réaliser cette expérience sans le SIK, nous vous suggérons d'utiliser les composants suivants :
Vous aurez également besoin d'une carte Arduino 101 ou Genuino 101.
Présentation de la LED Rouge/Vert/Bleu (RVB)
La LED Rouge/Vert/Bleu (RVB) regroupe trois LED en une. Elle possède quatre broches, les trois plus courtes contrôlant chacune une couleur (rouge, vert ou bleu) et la plus longue représentant la broche de terre commune. Vous pouvez créer une LED colorée personnalisée en activant et désactivant les différentes couleurs pour les combiner. Par exemple, si vous activez la broche rouge et la broche verte, la LED RVB s'allumera en jaune.
Mais quelle broche correspond à quelle couleur ? Tenez la LED RVB de telle sorte que la broche la plus longue (terre commune) soit alignée sur la gauche comme sur le schéma ci-dessous. De gauche à droite, les broches sont : Rouge, Vert et Bleu.
**Remarque : Lorsque vous câblez la LED RVB, chaque broche de couleur a besoin d'une résistance de limitation du courant conforme à la broche 101 que vous prévoyez d'utiliser pour la contrôler, comme avec n'importe quelle LED standard. **
Branchement du matériel
Vous êtes prêt à tout raccorder ? Consultez le schéma de câblage et les photos ci-dessous pour savoir comment faire.
Composants polarisés | Faites particulièrement attention aux marquages indiquant comment placer les composants sur la plaque breadboard, car les composants polarisés ne peuvent être connectés à un circuit que dans une direction. Ces composants sont signalés par un triangle d'avertissement jaune. |
Schéma de câblage de l'expérience
Ouverture du sketch
Ouvrez l'EDI Arduino sur votre ordinateur. Le codage en langage Arduino contrôlera votre circuit. Ouvrez le code du Circuit 3 en accédant au « Code du guide SIK 100 » que vous avez précédemment téléchargé et placé dans votre dossier « Examples ».
Pour ouvrir le code, cliquez sur : File > Examples >101 SIK Guide Code > Circuit_03
Vous pouvez également copier et coller le code suivant dans l'EDI Arduino. Cliquez sur Télécharger et observez ce qu'il se passe.
language:cpp
/*
SparkFun Inventor's Kit
Example sketch 03
RGB LED
Make an RGB LED display a rainbow of colors!
This sketch was written by SparkFun Electronics,
with lots of help from the Arduino community.
Visit http://learn.sparkfun.com/products/2 for SIK information.
Visit http://www.arduino.cc to learn about the Arduino.
*/
//create variables for pin numbers. We are making them constants here, because they //never change.
const int RED_PIN = 5;
const int GREEN_PIN = 6;
const int BLUE_PIN = 9;
// How fast we plan to cycle through colors in milliseconds
int DISPLAY_TIME = 10;
void setup()
{
//set the three pin variables as outputs
pinMode(RED_PIN, OUTPUT);
pinMode(GREEN_PIN, OUTPUT);
pinMode(BLUE_PIN, OUTPUT);
}
void loop()
{
// We've written a custom function called mainColors() that steps
// through all eight of these colors. We're only "calling" the
// function here (telling it to run). The actual function code
// is further down in the sketch.
mainColors();
}
// Here's the mainColors() custom function we've written.
void mainColors()
{
// Off (all LEDs off):
digitalWrite(RED_PIN, LOW);
digitalWrite(GREEN_PIN, LOW);
digitalWrite(BLUE_PIN, LOW);
//wait 1 second
delay(1000);
// Red (turn just the red LED on):
digitalWrite(RED_PIN, HIGH);
digitalWrite(GREEN_PIN, LOW);
digitalWrite(BLUE_PIN, LOW);
//wait 1 seconds
delay(1000);
// Green (turn just the green LED on):
digitalWrite(RED_PIN, LOW);
digitalWrite(GREEN_PIN, HIGH);
digitalWrite(BLUE_PIN, LOW);
//wait 1 second
delay(1000);
// Blue (turn just the blue LED on):
digitalWrite(RED_PIN, LOW);
digitalWrite(GREEN_PIN, LOW);
digitalWrite(BLUE_PIN, HIGH);
//wait 1 second
delay(1000);
// Yellow (turn red and green on):
digitalWrite(RED_PIN, HIGH);
digitalWrite(GREEN_PIN, HIGH);
digitalWrite(BLUE_PIN, LOW);
//wait 1 second
delay(1000);
// Cyan (turn green and blue on):
digitalWrite(RED_PIN, LOW);
digitalWrite(GREEN_PIN, HIGH);
digitalWrite(BLUE_PIN, HIGH);
//wait 1 second
delay(1000);
// Purple (turn red and blue on):
digitalWrite(RED_PIN, HIGH);
digitalWrite(GREEN_PIN, LOW);
digitalWrite(BLUE_PIN, HIGH);
//wait 1 second
delay(1000);
// White (turn all the LEDs on):
digitalWrite(RED_PIN, HIGH);
digitalWrite(GREEN_PIN, HIGH);
digitalWrite(BLUE_PIN, HIGH);
//wait 1 second
delay(1000);
}
À propos du code
language:cpp
for (x = 0; x < 768; x++)
{}
Une boucle for()
sert à répéter une action un nombre de fois défini sur une plage et exécute de façon répétée le code situé entre les accolades {}. Ici, la variable « x » commence à 0, se termine à 767 et augmente de un chaque fois (« x++ »).
language:cpp
if (x <= 255)
{}
else
{}
Les conditions « If / else » servent à faire des choix dans vos programmes. La condition entre parenthèses () est évaluée ; si elle a la valeur true, le code entre les premières accolades {} est exécuté. Sinon, le code dans entre les deuxièmes accolades {} est exécuté.
Ce que vous devez voir
La LED doit s'allumer, mais cette fois avec de nouvelles couleurs folles ! Dans le cas contraire, vérifiez que vous avez monté correctement le circuit et téléchargé le code sur votre carte. SI le problème persiste, consultez la section Dépannage.
Dépannage
La LED ne s'allume pas ou ne montre pas la bonne couleur
Comme les quatre broches de la LED sont très proches, vous pouvez facilement en placer une à la mauvaise place. Vérifiez l'emplacement de chaque broche.
Le rouge prédomine
La diode rouge de votre LED RVB est peut-être plus lumineuse que les deux autres. Pour équilibrer les couleurs, utilisez une résistance avec une valeur d'ohms plus élevée.