Всем привет! Сегодня я покажу вам как подключить RGB-светодиод к Arduino.
Для этого понадобятся:
1. Любая плата Arduino(я буду использовать Uno) с USB-кабелем
2. Компьютер с установленной Arduino IDE и драйверами для плат
3. RGB-светодиод и три резистора на 220Ом
4. Соединительные провода типа папа-папа 4 штуки
Что такое RGB-светодиод
RGB-светодиод представляет собой три светодиода красного, зелёного и синего цветов в одном корпусе. Само название RGB расшифровывается как "Red Green Blue" - "Красный Зелёный Синий". Благодаря этим трём цветам он может гореть сразу 7 цветами. А если изменять яркость светодиодов можно добиться огромного количества оттенков. Давайте же рассмотрим подключение такого светодиода к Arduino.
Подключение RGB-светодиода к Arduino и скетч
Сам светодиод имеет четыре ноги. Самая длинная - контакт Gnd. Её подключаем к Gnd платы Arduino. При таком расположении светодиода, как на картинке выше, нога, которая справа от минуса - это красный цвет. Самая левая нога - синий, после синего - зелёный. Также определить какой контакт какой цвет обозначает можно с помощью скетча, который представлен ниже. Просто подключаем самую длинную ногу к Gnd платы, затем берём провод, подключенный к Pin2 платы, и через резистор на 220Ом подключаем его по очереди к трём остальным ногам.
int Pin_Led = 2;
void setup() {
pinMode(Pin_Led, OUTPUT);
}
void loop() {
digitalWrite(Pin_Led, HIGH);
delay(1000000);
}
И так, итоговая схема подключения:
Gnd(RGB-светодиод) - Gnd(плата Arduino)
Красный(RGB-светодиод) через резистор на 220Ом - Pin2(плата Arduino)
Синий(RGB-светодиод) через резистор на 220Ом - Pin3(плата Arduino)
Зелёный(RGB-светодиод) через резистор на 220Ом - Pin4(плата Arduino)
Теперь напишем скетч, где RGB-светодиод горит 1 секунду по очереди каждым из трёх цветов.
int Red = 2; //пин красного светодиода
int Blue = 3; //пин синего светодиода
int Green = 4; //пин зелёного светодиода
void setup() {
pinMode(Red, OUTPUT); //переводим пин красного светодиода в режим //вывода
pinMode(Blue, OUTPUT); //переводим пин синего светодиода в режим //вывода
pinMode(Green, OUTPUT); //переводим пин зелёного светодиода в режим //вывода
}
void loop() {
//зажигаем красный цвет
digitalWrite(Red, HIGH);
delay(1000);
digitalWrite(Red, LOW);
//зажигаем синий цвет
digitalWrite(Blue, HIGH);
delay(1000);
digitalWrite(Blue, LOW);
//зажигаем зелёный цвет
digitalWrite(Green, HIGH);
delay(1000);
digitalWrite(Green, LOW);
}
Теперь наш RGB-светодиод может гореть тремя цветами. Как же сделать чтобы он горел семью цветами? Нужно вспомнить про смешивание цветов. Схема смешивания цветов в RGB представлена ниже.
Опираясь на эту схему напишем скетч, который будет зажигать RGB светодиод семью цветами.
int Red = 2; //пин красного светодиода
int Blue = 3; //пин синего светодиода
int Green = 4; //пин зелёного светодиода
void setup() {
pinMode(Red, OUTPUT); //переводим пин красного светодиода в режим //вывода
pinMode(Blue, OUTPUT); //переводим пин синего светодиода в режим //вывода
pinMode(Green, OUTPUT); /переводим пин зелёного светодиода в режим //вывода
}
void loop() {
//зажигаем красный цвет
digitalWrite(Red, HIGH);
delay(1000);
digitalWrite(Red, LOW);
//зажигаем синий цвет
digitalWrite(Blue, HIGH);
delay(1000);
digitalWrite(Blue, LOW);
//зажигаем зелёный цвет
digitalWrite(Green, HIGH);
delay(1000);
digitalWrite(Green, LOW);
//зажигаем жёлтый цвет
digitalWrite(Red, HIGH);
digitalWrite(Green, HIGH);
delay(1000);
digitalWrite(Red, LOW);
digitalWrite(Green, LOW);
//зажигаем фиолетовый цвет
digitalWrite(Red, HIGH);
digitalWrite(Blue, HIGH);
delay(1000);
digitalWrite(Red, LOW);
digitalWrite(Blue, LOW);
//зажигаем голубой цвет
digitalWrite(Green, HIGH);
digitalWrite(Blue, HIGH);
delay(1000);
digitalWrite(Green, LOW);
digitalWrite(Blue, LOW);
//зажигаем белый цвет
digitalWrite(Red, HIGH);
digitalWrite(Blue, HIGH);
digitalWrite(Green, HIGH);
delay(1000);
digitalWrite(Red, LOW);
digitalWrite(Blue, LOW);
digitalWrite(Green, LOW);
}
Теперь RGB-светодиод горит семью цветами. На этот раз всё, всем спасибо за внимание!