Faire s’allumer progressivement une LED
Fait partie de la section Sorties du Journey Arduino de Coddy. Leçon 3 sur 24.
Une variable peut contenir la luminosité. Chaque fois que loop() s’exécute, écris cette valeur sur la LED, augmente-la un peu et attends un instant. La LED devient plus lumineuse étape par étape :
int brightness = 0;
void loop() {
analogWrite(9, brightness);
brightness = brightness + 5;
if (brightness > 255) {
brightness = 0;
}
delay(30);
}La luminosité est définie en haut du programme, comme le compteur de pressions, afin qu’elle conserve sa valeur d’une exécution de loop() à la suivante. Définie à l’intérieur de loop(), elle reviendrait à 0 à chaque fois.
255 est la valeur maximale acceptée par analogWrite(), donc le if relance le fondu à partir de 0 une fois que la luminosité la dépasse.
Le pas et l’attente déterminent la vitesse : environ 50 étapes de 30 ms prennent une seconde et demie.
Défi
FacileFais varier progressivement la luminosité de la LED sur la broche 9, encore et encore :
- conserve la luminosité dans une variable déclarée au-dessus de
setup(), en commençant à 0 - dans
loop(), écris sa valeur avecanalogWrite(), ajoute 5 et attends 30 ms - lorsqu’elle dépasse 255, remets-la à 0
Appuie sur Run et observe la LED, puis sur Check.
Essayez vous-même
const int ledPin = 9;
// créez ici la variable de luminosité, avec une valeur initiale de 0
void setup() {
pinMode(ledPin, OUTPUT);
}
void loop() {
// écrivez la valeur de luminosité, ajoutez 5, recommencez après 255, attendez 30 ms
}
Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.
Toutes les leçons de Sorties
1Luminosité
Atténuer une LED avec le PWMBroches PWM marquées d’un ~Faire s’allumer progressivement une LEDFaire varier l’intensité d’une LEDVariateur à potentiomètreEntraînez-vous par vous-même : Playground Arduino