Description
Module RGB 5050 à 8 Led
Le module RGB 5050 à 8 LED est un dispositif utilisant des LEDs RGB de type 5050, chacune pouvant être contrôlée individuellement pour produire une large gamme de couleurs. Ce module est couramment utilisé pour des projets d’éclairage décoratif, des affichages LED et des projets de bricolage nécessitant des effets lumineux complexes.
Caractéristiques en détails
- Tension de fonctionnement : 5V DC
- LEDs : 8 x 5050 RGB LED
- Protocole de communication : Utilisation de plusieurs broches de données
- Dimensions : 51mm x 10mm x 3mm
- Courant de fonctionnement : ~18mA par LED
- Fréquence de scan : ≥400Hz/s
- Niveaux de luminosité : 256 niveaux par couleur, permettant jusqu’à 16 777 216 couleurs
- Type de module : Chaînable, permettant la connexion de plusieurs modules ensemble
Fonctionnement
Le module utilise des LEDs 5050, chacune avec un circuit de contrôle intégré. Cela permet un contrôle précis de chaque LED via des broches de données séparées. En envoyant des signaux de données spécifiques, vous pouvez ajuster les couleurs et la luminosité de chaque LED individuellement. Ce type de module est souvent utilisé avec des microcontrôleurs comme Arduino, qui peuvent envoyer les signaux nécessaires pour contrôler les LED.
Applications
- Éclairage décoratif
- Affichages LED
- Projets DIY (Do It Yourself)
- Enseignement et démonstrations
- Signalisation lumineuse
Brochage
- VCC : Connecté à +5V
- GND : Connecté à la masse (GND)
- D0 à D7 : Connexions pour chaque LED
- R : Anode de la LED rouge (connecté à une broche PWM)
- B : Anode de la LED bleue (connecté à une broche PWM)
- G : Anode de la LED verte (connecté à une broche PWM)
Comment l’utiliser:
Pour utiliser ce module, connectez l’alimentation (VCC et GND) à une source de 5V et les broches de données (D0 à D7) aux sorties de données d’un microcontrôleur. Utilisez des bibliothèques comme Adafruit NeoPixel ou FastLED pour contrôler les LEDs.
Exemple de code Arduino de base
#define RED_PIN 10 // Pin for red color
#define GREEN_PIN 11 // Pin for green color
#define BLUE_PIN 12 // Pin for blue color
#define D0 2
#define D1 3
#define D2 4
#define D3 5
#define D4 6
#define D5 7
#define D6 8
#define D7 9
void setup() {
pinMode(RED_PIN, OUTPUT);
pinMode(GREEN_PIN, OUTPUT);
pinMode(BLUE_PIN, OUTPUT);
pinMode(D0, OUTPUT);
pinMode(D1, OUTPUT);
pinMode(D2, OUTPUT);
pinMode(D3, OUTPUT);
pinMode(D4, OUTPUT);
pinMode(D5, OUTPUT);
pinMode(D6, OUTPUT);
pinMode(D7, OUTPUT);
}
void loop() {
// Example: Set all LEDs to red
setColor(255, 0, 0); // Set all LEDs to red
delay(1000); // Wait 1 second
// Example: Set all LEDs to green
setColor(0, 255, 0); // Set all LEDs to green
delay(1000); // Wait 1 second
// Example: Set all LEDs to blue
setColor(0, 0, 255); // Set all LEDs to blue
delay(1000); // Wait 1 second
// Example: Cycle through colors
for (int i = 0; i < 256; i++) {
setColor(i, 255 - i, 0); // Change colors
delay(10); // Wait 10 milliseconds
}
}
// Function to set color for all LEDs
void setColor(int red, int green, int blue) {
analogWrite(RED_PIN, red);
analogWrite(GREEN_PIN, green);
analogWrite(BLUE_PIN, blue);
}
But du code
Ce code permet de contrôler chaque LED du module RGB 5050 individuellement, en utilisant des broches dédiées pour chaque couleur et chaque LED.
Composants nécessaires pour le code de base
- Arduino Uno
- Module RGB 5050 à 8 LED
- Fils de connexion
Explication détaillée du code
- Définition des broches :
#define RED_PIN 10
,#define GREEN_PIN 11
,#define BLUE_PIN 12
: Définit les broches pour les couleurs rouge, verte et bleue.#define D0 2
à#define D7 9
: Définit les broches pour chaque LED.
- Configuration des broches dans
setup()
:pinMode(RED_PIN, OUTPUT)
,pinMode(GREEN_PIN, OUTPUT)
,pinMode(BLUE_PIN, OUTPUT)
: Configure les broches de couleurs comme sorties.pinMode(D0, OUTPUT)
àpinMode(D7, OUTPUT)
: Configure les broches pour chaque LED comme sorties.
- Boucle principale
loop()
:setColor(255, 0, 0)
,setColor(0, 255, 0)
,setColor(0, 0, 255)
: Définit les couleurs rouge, verte et bleue pour toutes les LEDs.for (int i = 0; i < 256; i++)
: Cycle à travers les couleurs en utilisant la fonctionsetColor
.
- Fonction
setColor()
:analogWrite(RED_PIN, red)
,analogWrite(GREEN_PIN, green)
,analogWrite(BLUE_PIN, blue)
: Écrit les valeurs de couleurs pour les broches de couleurs.
Brochage pour le code de base
- VCC → Arduino 5V
- GND → Arduino GND
- D0 → Arduino Pin 2
- D1 → Arduino Pin 3
- D2 → Arduino Pin 4
- D3 → Arduino Pin 5
- D4 → Arduino Pin 6
- D5 → Arduino Pin 7
- D6 → Arduino Pin 8
- D7 → Arduino Pin 9
- R → Arduino PWM Pin 10
- B → Arduino PWM Pin 11
- G → Arduino PWM Pin 12
Exemple de code Arduino avancé avec plus d’effets de couleurs.
#define RED_PIN 10 // Pin pour la couleur rouge
#define GREEN_PIN 11 // Pin pour la couleur verte
#define BLUE_PIN 12 // Pin pour la couleur bleue
#define D0 2 // Pin de données pour la LED 0
#define D1 3 // Pin de données pour la LED 1
#define D2 4 // Pin de données pour la LED 2
#define D3 5 // Pin de données pour la LED 3
#define D4 6 // Pin de données pour la LED 4
#define D5 7 // Pin de données pour la LED 5
#define D6 8 // Pin de données pour la LED 6
#define D7 9 // Pin de données pour la LED 7
void setup() {
// Configurer les broches de couleur comme sorties
pinMode(RED_PIN, OUTPUT);
pinMode(GREEN_PIN, OUTPUT);
pinMode(BLUE_PIN, OUTPUT);
// Configurer les broches de données des LEDs comme sorties
pinMode(D0, OUTPUT);
pinMode(D1, OUTPUT);
pinMode(D2, OUTPUT);
pinMode(D3, OUTPUT);
pinMode(D4, OUTPUT);
pinMode(D5, OUTPUT);
pinMode(D6, OUTPUT);
pinMode(D7, OUTPUT);
}
void loop() {
// Exemple : Fixer toutes les LEDs à rouge
setColor(255, 0, 0); // Fixer toutes les LEDs à rouge
delay(1000); // Attendre 1 seconde
// Exemple : Fixer toutes les LEDs à vert
setColor(0, 255, 0); // Fixer toutes les LEDs à vert
delay(1000); // Attendre 1 seconde
// Exemple : Fixer toutes les LEDs à bleu
setColor(0, 0, 255); // Fixer toutes les LEDs à bleu
delay(1000); // Attendre 1 seconde
// Cycle à travers les couleurs
for (int i = 0; i < 256; i++) {
setColor(i, 255 - i, 0); // Changer les couleurs progressivement
delay(10); // Attendre 10 millisecondes
}
// Effet de fondu
for (int i = 0; i < 256; i++) {
setColor(i, i, i); // Fondu entrant
delay(10); // Attendre 10 millisecondes
}
for (int i = 255; i >= 0; i--) {
setColor(i, i, i); // Fondu sortant
delay(10); // Attendre 10 millisecondes
}
// Effet arc-en-ciel
for (int i = 0; i < 256; i++) {
int r = sin(i * 0.01) * 127 + 128;
int g = sin(i * 0.01 + 2) * 127 + 128;
int b = sin(i * 0.01 + 4) * 127 + 128;
setColor(r, g, b); // Effet arc-en-ciel
delay(10); // Attendre 10 millisecondes
}
// Effet de respiration
for (int i = 0; i < 256; i++) {
int r = sin(i * 0.01) * 127 + 128;
int g = sin(i * 0.01) * 127 + 128;
int b = sin(i * 0.01) * 127 + 128;
setColor(r, g, b); // Effet de respiration
delay(10); // Attendre 10 millisecondes
}
for (int i = 255; i >= 0; i--) {
int r = sin(i * 0.01) * 127 + 128;
int g = sin(i * 0.01) * 127 + 128;
int b = sin(i * 0.01) * 127 + 128;
setColor(r, g, b); // Effet de respiration sortant
delay(10); // Attendre 10 millisecondes
}
}
// Fonction pour définir la couleur pour toutes les LEDs
void setColor(int red, int green, int blue) {
analogWrite(RED_PIN, red);
analogWrite(GREEN_PIN, green);
analogWrite(BLUE_PIN, blue);
}
Explication détaillée du code
- Définition des broches :
#define RED_PIN 10
,#define GREEN_PIN 11
,#define BLUE_PIN 12
: Définit les broches pour les couleurs rouge, verte et bleue.#define D0 2
à#define D7 9
: Définit les broches pour chaque LED.
- Configuration des broches dans
setup()
:pinMode(RED_PIN, OUTPUT)
,pinMode(GREEN_PIN, OUTPUT)
,pinMode(BLUE_PIN, OUTPUT)
: Configure les broches de couleurs comme sorties.pinMode(D0, OUTPUT)
àpinMode(D7, OUTPUT)
: Configure les broches pour chaque LED comme sorties.
- Boucle principale
loop()
:setColor(255, 0, 0)
,setColor(0, 255, 0)
,setColor(0, 0, 255)
: Définit les couleurs rouge, verte et bleue pour toutes les LEDs.for (int i = 0; i < 256; i++)
: Cycle à travers les couleurs en utilisant la fonctionsetColor
.
- Fonction
setColor()
:analogWrite(RED_PIN, red)
,analogWrite(GREEN_PIN, green)
,analogWrite(BLUE_PIN, blue)
: Écrit les valeurs de couleurs pour les broches de couleurs.
Détails de chaque section
- Inclusion des broches :
- Les broches pour les couleurs sont définies pour connecter le module aux broches PWM de l’Arduino, permettant le contrôle de l’intensité des couleurs.
- Setup :
- Configure les broches définies comme sorties pour permettre le contrôle des LEDs et des couleurs.
- Loop :
- La boucle principale change les couleurs des LEDs à des intervalles réguliers et crée divers effets lumineux comme le changement de couleurs, les fondus, l’effet arc-en-ciel, et l’effet de respiration.
- Fonction
setColor
:- Cette fonction utilise
analogWrite
pour envoyer des valeurs PWM aux broches de couleurs, permettant de régler l’intensité de chaque couleur (rouge, vert, bleu) et de créer une large gamme de couleurs.
- Cette fonction utilise
Brochage
- VCC → Arduino 5V
- GND → Arduino GND
- D0 → Arduino Pin 2
- D1 → Arduino Pin 3
- D2 → Arduino Pin 4
- D3 → Arduino Pin 5
- D4 → Arduino Pin 6
- D5 → Arduino Pin 7
- D6 → Arduino Pin 8
- D7 → Arduino Pin 9
- R → Arduino PWM Pin 10
- B → Arduino PWM Pin 11
- G → Arduino PWM Pin 12
Mots clés: light, LED RGB, Module LED, Arduino, Éclairage, Couleur, DIY, PWM, Arduino tutorial, RGB LED module color.