Aller au contenu

Étape 3 · Allumer 10 LEDs

On teste 10 LEDs sans couper le ruban : on n'en commande que 10 dans le code, les autres restent éteintes.

Câblage

Ruban ESP32
DIN (données) GPIO 5, via la résistance 330 Ω
5V VIN
GND GND (commun avec l'ESP32)

Le bon bout du ruban

On branche le côté DIN, celui d'où part la flèche imprimée. Beaucoup de rubans ont un petit connecteur 3 fils à ce bout : pas besoin de souder.

Le code

Bibliothèque à installer : FastLED.

#include <FastLED.h>
#define NUM_LEDS 10
CRGB leds[NUM_LEDS];
void setup() {
  FastLED.addLeds<WS2812B, 5, GRB>(leds, NUM_LEDS);
  FastLED.setBrightness(40);
}
void loop() {
  fill_solid(leds, NUM_LEDS, CRGB::Red);   FastLED.show(); delay(600);
  fill_solid(leds, NUM_LEDS, CRGB::Green); FastLED.show(); delay(600);
  fill_solid(leds, NUM_LEDS, CRGB::Blue);  FastLED.show(); delay(600);
}

Luminosité basse

À pleine puissance, chaque LED peut tirer environ 60 mA ; le port USB ne suit pas au-delà d'une dizaine de LEDs.

Les premières LEDs scintillent ?

Le signal 3,3 V de l'ESP32 est un peu juste pour un ruban 5 V. Raccourcir le fil de données ; en dernier recours, ajouter un adaptateur de niveau.

Validation

  • Rouge, vert, bleu s'affichent dans le bon ordre