Arduino Nano - LED - Fondu

Ce tutoriel vous explique comment programmer un Arduino Nano pour estomper une LED. Nous passerons en revue trois exemples et comparerons les différences entre eux :

Préparation du matériel

1×Arduino Nano
1×USB A to Mini-B USB cable
1×LED
1×220 ohm resistor
1×Breadboard
1×Jumper Wires
1×(Optional) 9V Power Adapter for Arduino Nano
1×(Recommended) Screw Terminal Adapter for Arduino Nano

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

Brochage des LED

LED a deux broches :

  • Broche cathode(-) : doit être attachée à GND (0V)
  • Broche anode(+) : utilisée pour contrôler l'état de la LED
Brochage LED

Comment cela fonctionne

Une fois que la cathode (-) est connectée à GND :

  • Si le GND est connecté à l'anode(+), la LED sera ÉTEINTE.
  • Si le VCC est connecté à l'anode(+), la LED sera ALLUMÉE.
  • Si un signal PWM est appliqué à l'anode(+), la luminosité de la LED sera ajustée selon la valeur du PWM, qui varie de 0 à 255. Une valeur PWM plus élevée résulte en une LED plus lumineuse, tandis qu'une valeur PWM plus faible en une LED plus sombre.
    • Lorsque la valeur du PWM est 0, cela équivaut à GND, donc la LED sera ÉTEINTE.
    • Lorsque la valeur du PWM est 255, cela équivaut à VCC, donc la LED sera totalement ALLUMÉE.
    Comment fonctionne une LED

    ※ NOTE THAT:

    Pour la majorité des LED, une résistance doit être placée entre l'anode (+) et VCC. La valeur de la résistance dépend des spécifications de la LED.

    Arduino Nano - estomper la LED

    Certains des broches sur un Arduino Nano peuvent être programmées pour générer un signal PWM. Pour estomper une LED, nous pouvons connecter la broche anode (+) de la LED à une broche Arduino Nano, la cathode (-) à GND, et programmer la broche Arduino Nano pour générer du PWM.

Diagramme de câblage

Schéma de câblage de la LED Arduino Nano

This image is created using Fritzing. Click to enlarge image

Comment programmer

  • Configurez une sortie numérique sur une broche Arduino en utilisant la fonction pinMode().
  • Par exemple, cela pourrait être fait pour la broche 5 :
pinMode(5, OUTPUT);
  • Réglez la luminosité de la LED en créant un signal PWM avec la fonction analogWrite() :
analogWrite(5, brightness);

La luminosité peut varier de 0 à 255.

Code Arduino Nano - Estomper la LED

/* * Ce code Arduino Nano a été développé par newbiely.fr * Ce code Arduino Nano 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-nano/arduino-nano-led-fade */ #define LED_PIN 5 // The Arduino PWM pin the LED is attached to int brightness = 0; // how bright the LED is int fade_step = 5; // how many points to fade the LED by // The setup function runs once on reset or power-up void setup() { // declare pin 9 to be an output: pinMode(LED_PIN, OUTPUT); } // The loop function repeats indefinitely. void loop() { // set the brightness of pin 9: analogWrite(LED_PIN, brightness); // change the brightness for next time through the loop: brightness = brightness + fade_step; // reverse the direction of the fading at the ends of the fade: if (brightness <= 0 || brightness >= 255) { fade_step = -fade_step; } // wait for 30 milliseconds to see the dimming effect delay(30); }

Étapes rapides

  • Connectez l'Arduino Nano à l'ordinateur à l'aide d'un câble USB.
  • Ouvrez l'IDE Arduino, sélectionnez la carte et le port corrects.
  • Copiez le code ci-dessus et ouvrez-le dans l'IDE Arduino.
  • Cliquez sur le bouton Upload de l'IDE Arduino pour compiler et téléverser le code sur la carte Arduino Nano.
Téléversement de code dans l'IDE Arduino
  • Découvrez la luminosité de la LED.

Explication du code

Découvrez l'explication ligne par ligne contenue dans les commentaires du code source !

※ NOTE THAT:

L'exemple ci-dessus utilise la fonction delay() pour créer un effet de fondu en entrée et en sortie. Cependant, cette méthode n'est pas très fluide et empêche l'exécution d'autres codes. Dans les sections suivantes, nous apprendrons comment réaliser un fondu en entrée et en sortie sans bloquer d'autres codes en utilisant la fonction millis().

Comment réaliser un fondu d'allumage d'une LED sur une période sans utiliser delay()

/* * Ce code Arduino Nano a été développé par newbiely.fr * Ce code Arduino Nano 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-nano/arduino-nano-led-fade */ #define LED_PIN 5 // la broche PWM de l'Arduino à laquelle la LED est connectée #define FADE_PEDIOD 3000 // le temps de fondu est de 3 secondes unsigned long start_time; // La fonction setup s'exécute une fois lors du reset ou de la mise sous tension void setup() { pinMode(LED_PIN, OUTPUT); // déclarer la broche 5 comme une sortie start_time = millis(); } // fondu en entrée dans la boucle, et redémarrage après la fin void loop() { unsigned long progress = millis() - start_time; if (progress <= FADE_PEDIOD) { long brightness = map(progress, 0, FADE_PEDIOD, 0, 255); analogWrite(LED_PIN, brightness); } else { start_time = millis(); // redémarrer le fondu encore une fois } }

Comment estomper une LED sur une période sans utiliser delay()

/* * Ce code Arduino Nano a été développé par newbiely.fr * Ce code Arduino Nano 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-nano/arduino-nano-led-fade */ #define LED_PIN 5 // le pin PWM d'Arduino auquel la LED est connectée #define FADE_PEDIOD 3000 // la durée de l'estompage est de 3 secondes unsigned long start_time; // La fonction setup s'exécute une fois lors de la réinitialisation ou de la mise sous tension void setup() { pinMode(LED_PIN, OUTPUT); // déclarer le pin 5 comme sortie start_time = millis(); } // estompage dans la boucle, et redémarrage après la fin void loop() { unsigned long progress = millis() - start_time; if (progress <= FADE_PEDIOD) { long brightness = 255 - map(progress, 0, FADE_PEDIOD, 0, 255); analogWrite(LED_PIN, brightness); } else { start_time = millis(); // redémarrer l'estompage } }

Vidéo

Lancez-vous un défi

Ajustez la luminosité de la LED avec un potentiomètre. Conseil : Consultez Arduino Nano - Potentiomètre pour plus d'informations.

Connaissances supplémentaires

  • La fonction analogWrite() dans l'Arduino Nano génère un signal PWM qui provoque l'atténuation d'une LED. Cependant, si l'on possède les connaissances avancées pour créer une fonction personnalisée qui produit un signal PWM basse fréquence, la LED clignotera au lieu de s'estomper.
  • Résumé : Les signaux PWM générés par l'Arduino Nano peuvent être utilisés à diverses fins, telles que le contrôle des moteurs servo, des moteurs à courant continu, la production de son avec un buzzer piézo, l'atténuation des LEDs et le clignotement des LEDs.

Références de fonction

※ 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!