Aller au contenu


Photo

Présentation de la barretteLED adressable RGB WS2812-B


  • Veuillez vous connecter pour répondre
Aucune réponse à ce sujet

#1 TheDarkRainibow

TheDarkRainibow

    Membre

  • Membres
  • 19 messages
  • Gender:Male

Posté 01 novembre 2022 - 10:48

Bonjours à tous,

 

Aujourd’hui je vais  vous présenter  la barrette LED RGB WS2812-B et son fonctionnement.

 

barrette-de-led-rgb-ws2812-b.jpg

 

Présentation :

 

La barrette de LED RGB WS2812-B est une barrette composé de 8 LEDS RGB WS2812-B. Utile pour faire des éclairages décoratifs, ou encore faire une lampe de bureau avec sélection de couleur, etc…. Chacune des leds peut être pilotées indépendamment et de n’importe quelle couleur.

 

Matériel nécessaire :

 

Les schémas de câblage :

 

20221101_215029.jpg

 

La barrette LED possède 2 prises 4 fils une «  input » et une «  output »  qui ont chacune :
  l’alimentation 5V,
  deux masse (GND ) ,
 et les signaux DIN et DOUT ( Data Input et Data Output) .

 

Il faut relier le 5V et GND de l’arduino au 5V et GND de la barrette LED et relier DIN de la barrette LED à la broche de notre choix,  GPIO  6 dans cet exemple.

 

L’avantage de ce genre de led adressable c’est qu’on peut les chaîner, si je veux brancher deux barrettes LED il me suffira de brancher le connecteur DIN de ma deuxième barrette à mon DOUT de ma première barrette…

 

20221101_215503.jpg

 

Code :

 

Pour piloter cette barrette de LED il existe un ensemble de librairies qui vont vous simplifier la tâche.

 

Il vous faut installer :

  • FastLED

 

Rappel pour installer les librairies vous pouvez le faire directement avec l’IDE Arduino via « outils » et « gérer les bibliothèques »

 

Une fois les librairies installées on va pouvoir ouvrir le code d’exemple : Blink  (fichier / exemples / FastLED / Blink)

 

Capture.PNG

 

À l’aide du code d’exemple blink et d’un potentiomètre on va créer un programme permettant de sélectionner la led que l’on veut faire clignoter sur la barrette.

 

On va d’abord ouvrir une nouvelle fenêtre en allant sur « fichier » et sur « nouveau ».

Aller sur le code Blink et copier :

#include <FastLED.h>

#define NUM_LEDS 8

#define DATA_PIN 6

CRGB leds[NUM_LEDS];

void setup() {

Serial.begin(9600);

FastLED.addLeds<WS2812B, DATA_PIN, RGB>(leds, NUM_LEDS);

}

void loop() {

// Turn the LED on, then pause

leds[0] = CRGB::Red;

FastLED.show();

delay(500);

// Now turn the LED off, then pause

leds[0] = CRGB::Black;

FastLED.show();

delay(500);

}

Coller le tout sur la nouvelle page que l’on a créé juste avant.

 

Capture2.PNG

 

On ajoute le code de la lecture du potentiomètre dans la fonction « void loop() » puis on fait la conversion des données du pot au nombre de led qu’a notre barrette de LED (actuellement 8 leds).

int pot = analogRead(A0);

int led = pot/128;

Serial.print("Potentiomètre: ");

Serial.println(pot);

Serial.print("Numéro de LED: ");

Serial.println(led);

Remplacer «   leds[0] » par  « leds[led], » ajuster les « delay(500); » (selon votre choix) puis téléverser.

 

 

Voici la totalité du code :

 






0 utilisateur(s) li(sen)t ce sujet

0 members, 0 guests, 0 anonymous users