وحدة RGB 5050 بثمانية مصابيح LED

45,00 DH

التوفر:

49 متوفر في المخزون

رمز المنتج: 0175-A التصنيفات: ,

الوصف

وحدة RGB 5050 بثمانية مصابيح LED

وحدة إضاءة تضم ثمانية مصابيح RGB من نوع 5050 وفق الإعلان، لمشاريع الإضاءة الزخرفية والمؤشرات والإلكترونيات.

المواصفات المذكورة في الإعلان

  • التغذية: 5V DC وفق البائع
  • مصابيح LED: عدد 8 من نوع RGB 5050
  • الأبعاد: 51 × 10 × 3mm
  • التيار المذكور: نحو 18mA لكل مصباح
  • تردد المسح المذكور: ≥400Hz/s
  • مستويات السطوع المذكورة: 256 لكل لون
  • يصف البائع الوحدة بأنها قابلة للربط التسلسلي

يتضمن الإعلان أوصافًا متعارضة لواجهة التحكم وترتيب الأطراف؛ فهو يذكر أطراف بيانات D0–D7 وكذلك أطرافًا منفصلة للألوان R وG وB، بينما لا تستخدم الشيفرتان المرفقتان إلا PWM لأطراف الألوان ولا تتحكمان بأطراف D0–D7. تحقق من علامات اللوحة الفعلية ومخططها ودائرة القيادة المطلوبة قبل التوصيل أو تشغيل الطاقة. كما يذكر المصدر أن أطراف Arduino 10 و11 و12 هي PWM، مع أن الطرف 12 في Uno ليس خرج PWM. نُقلت الأمثلة أدناه كما وردت في الإعلان الفرنسي وقد تحتاج إلى تعديل لتناسب العتاد.

مثال المصدر الأساسي

#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);
}
#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);
}

مثال المصدر المتقدم

يصف المصدر تأثيرات إضافية لتغيير الألوان والتلاشي وقوس قزح والتنفس. تحقق أولًا من واجهة الوحدة ودائرة القيادة؛ فالبرنامج المعروض يتحكم بثلاثة مخارج ألوان فقط.

#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);
}
#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);
}

التوصيلات الواردة في الإعلان

يذكر المصدر توصيل VCC إلى 5V وGND إلى الأرضي وD0–D7 إلى المداخل الرقمية 2–9، إضافة إلى R وB وG على 10 و11 و12. هذه التعيينات غير متوافقة داخليًا مع الشيفرتين وقدرات PWM في Arduino Uno. لا تعتمد هذا الترتيب قبل مطابقته مع وثائق اللوحة الموردة.

شكرًا لولائك!

AR