Трехцветный светодиод

В работе с Arduino очень удобно использовать многоцветные светодиоды

Глаз человека имеет три типа световых рецепторов (красный, зелёный и синий). Поэтому мозг обрабатывают сумму красного, зелёного и синего и преобразуют его в определённый цвет.

Отсюда любой цвет — это варьирование количества красного, зелёного и синего цвета. Так, с помощью трёх светодиодов мы можно показать глазу определённый цвет. Эта же идея используется в телевизорах, где ЖК-«пиксель» состоит из красного, зелёного и синего цвета точек рядом друг с другом. Если мы устанавливаем яркость всех трёх светодиодов одинаковую и максимальную, то общий цвет будет белый.

Если вы когда-либо интересовались веб-программированием, то, вероятно, помните, что цвета часто представляются как hex-код. Например, красный цвет имеет номер #FF0000.

Шесть цифр номера на самом деле три пары чисел: первая пара — красный компонент, следующие две цифры – зелёный и синий. Красный — #FF0000, потому что максимальное значение красного (FF — это 255 в шестнадцатеричном виде) и в нем нет ни зелёного, ни синего.
Можно сделать цвет Индиго (#4B0082). Красный, зелёный и синий в Индиго — 4B, 00 и 82 соответственно.

Подключение трехцветного светодиода

Трехцветный светодиод (rgb led) — это три светодиода разных цветов в одном корпусе. Они бывают как с небольшой печатной платой, на которой расположены резисторы, так и без встроенных резисторов. При работе с трехцветным светодиодом без встроенных резисторов необходимо иметь ввиду, что назначение ножки светодиода можно определить по ее длине.
Самая длинная — земля (GND),
короче — зеленый (G),
еще короче —  голубой (B),
а самая короткая — красный (R).

 

Схема подключения модели Arduino с трехцветным светодиодомКаждый светодиод внутри пакета требует собственного резистора сопротивлением 270 Ом для предотвращения слишком большого тока, протекающего через него.

//объявляем переменные с номерами пинов
int r = 9;
int g = 10;
int b = 11;

void setup() {
//объявляем используемые порты
  pinMode(r, OUTPUT);
  pinMode(g, OUTPUT);
  pinMode(b, OUTPUT);
 }
 
void loop()  //процедура loop
{
  digitalWrite(r, HIGH);       //включаем красный
  delay(500);                  //ждем 500 Мс
  digitalWrite(r, LOW);        //выключаем красный
  
  digitalWrite(g, HIGH);       //включаем зеленый
  delay(500);                  //ждем 500 Мс
  digitalWrite(g, LOW);        //выключаем зеленый
  
  digitalWrite(b, HIGH);       //включаем синий
  delay(500);                  //ждем 500 Мс
  digitalWrite(b, LOW);        //выключаем синий
}

Приводимый скетч по очереди включает все основные цвета трехцветного светодиода.

По материалам курса робототехники

Добавить комментарий

Ваш e-mail не будет опубликован.

Нажимая кнопку "Отправить" Вы даёте свое согласие на обработку введенной персональной информации в соответствии с Федеральным Законом №152-ФЗ от 27.07.2006 "О персональных данных".