Оглавление:
- Запасы
- Шаг 1. Выберите пульт
- Шаг 2: сначала создайте его на хлебной доске (не обязательно, но рекомендуется)
- Шаг 3: Код
- Шаг 4: Завершение
- Шаг 5: ТЕСТ
Видео: Светодиодная RGB-подсветка Arduino Nano Baised с ИК-управлением: 5 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:49
В этом небольшом проекте я хочу показать вам, как я построил RGB-светодиод на базе Arduino, который управляется ИК-пультом и питается от USB-кабеля.
Запасы
1. Светодиод RGB
2. ИК-приемник
3. USB-кабель.
4. Arduino nano
5. ИК-пульт
6. некоторые кабели
7. Резисторы 50-100 Ом (я использую резисторы 47 Ом, но особой разницы нет)
Шаг 1. Выберите пульт
Итак, какой пульт вы используете, это ваше решение, но на вашем пульте должно быть 6 ключей, которые вы хотите использовать. 2 из них для красного, 2 для зеленого и 2 для синего.
Шаг 2: сначала создайте его на хлебной доске (не обязательно, но рекомендуется)
Теперь соберите схему на макетной плате.
соединения:
Заземление светодиода RGB> Заземление Arduino nano
RGB LED Красный> Цифровой вывод 5 Arduino nano
Светодиод RGB зеленый> Цифровой контакт 6 Arduino nano
Синий светодиод RGB> Цифровой вывод 9 Arduino nano
USB GND> Arduino nano GND
USB 5 В> Arduino nano 5 В
Контакт 1 ИК-приемника> Контакт 4 Arduino nano Digital
Контакт 2 ИК-приемника> Arduino nano GND
Контакт 3 ИК-приемника> Arduino nano 5v
(все подключения показаны выше)
(каждый цветной вывод RGB светодиода последовательно подключен к резисторам)
Шаг 3: Код
код следующий:
Вот библиотека, которую я использовал.
#включают
int IR_Recv = 4; // вывод ИК-приемника
int Rval = 0; int Gval = 0; int Bval = 0; int RvalDemo = 0; int GvalDemo = 0; int BvalDemo = 0; int R = 5; // Красный вывод int G = 6; // Зеленый вывод int B = 9; // Синий пин #define Rup1 1976685926 // увеличивает яркость красного #define Rup2 3772818013 // увеличивает яркость красного #define Rdown1 3843765582 // уменьшает яркость красного #define Rdown2 3772813933 // уменьшает яркость красного #define Gup1 3772797613 // увеличивает яркость зеленого #define Gup2 3774104872 // увеличивает яркость зеленого #define Gdown1 3772834333 // снижает яркость зеленого #define Gdown2 1784778242 // снижает яркость зеленого #define Bup1 3980777284 // делает синий яркость увеличивается #define Bup2 3772781293 // увеличивает яркость синего #define Bdown1 3772801693 // снижает яркость синего #define Bdown2 3361986248 // уменьшает яркость синего // ПРИМЕЧАНИЕ: ВЫ ДОЛЖНЫ ИЗМЕНИТЬ НОМЕРА НА ПУЛЬТ ДИСТАНЦИОННОГО УПРАВЛЕНИЯ !!! ! // У меня есть 2 одинаковых ключа, например Rup1 и Rup2. потому что // мой пульт выводит 2 числа, когда вы нажимаете одну клавишу. // в вашем случае вы можете поместить одинаковые числа в Rup1 и Rup2, Gup1 и Gup2 и так далее. // Когда вы нажимаете клавишу, номер должен появиться в последовательном мониторе, // Это то, что вы должны ввести в разделе "#define". IRrecv irrecv (IR_Recv); decode_results результаты; void setup () {TCCR2A = _BV (COM2A1) | _BV (COM2B1) | _BV (WGM21) | _BV (WGM20); TCCR2B = _BV (CS22); irrecv.enableIRIn (); pinMode (R, ВЫХОД); pinMode (G, ВЫХОД); pinMode (B, ВЫХОД); Serial.begin (9600); } void loop () {if (irrecv.decode (& results)) {long int decCode = results.value; switch (results.value) {/////////// RED case Rup1: Rval = Rval + 10; перерыв; case Rup2: Rval = Rval + 10; перерыв; case Rdown1: Rval = Rval - 10; перерыв; case Rdown2: Rval = Rval - 10; перерыв; //////////// ЗЕЛЕНЫЙ case Gup1: Gval = Gval + 10; перерыв; case Gup2: Gval = Gval + 10; перерыв; case Gdown1: Gval = Gval - 10; перерыв; case Gdown2: Gval = Gval - 10; перерыв; ///////////// СИНИЙ корпус Bup1: Bval = Bval + 10; перерыв; case Bup2: Bval = Bval + 10; перерыв; case Bdown1: Bval = Bval - 10; перерыв; case Bdown2: Bval = Bval - 10; перерыв; //////////////////////////////////////} irrecv.resume (); } если (Rval> 255) (Rval = 255); если (Rval 255) (Gval = 255); если (Gval 255) (Bval = 255); если (Bval <0) (Bval = 0); analogWrite (R, Rval); analogWrite (G, Gval); analogWrite (B, Bval); Serial.println (результат.значение); delayMicroseconds (1); }
Шаг 4: Завершение
Я, черт возьми, плохо поработал с оболочкой. все, что я сделал, это просто записал его на пленку, но я постарался сделать его как можно меньше.
Если у вас есть вопросы или ошибки, обязательно сообщите мне, я сделаю все возможное, чтобы помочь вам исправить ошибку. Спасибо за прочтение.
Рекомендуемые:
RGB-СВЕТОДИОДНАЯ МАТРИЦА С ИСПОЛЬЗОВАНИЕМ NEOPIXEL: 8 шагов (с изображениями)
RGB-СВЕТОДИОДНАЯ МАТРИЦА С ИСПОЛЬЗОВАНИЕМ NEOPIXEL: В этом уроке я покажу вам, как построить RGB LEDMATRIX 5 * 5, ИСПОЛЬЗУЯ NEOPIXEL. С помощью этой матрицы мы можем отображать завораживающие анимации, смайлики и буквы, которые выглядят очень привлекательно. Давайте начнем
Светодиодная лампа DIY WiFi RGB: 6 шагов (с изображениями)
Светодиодная лампа DIY WiFi RGB: в этом проекте я покажу вам, как я создал трехканальный источник постоянного тока и успешно объединил его с ESP8266µC и светодиодом высокой мощности RGB 10 Вт, чтобы создать лампу, управляемую Wi-Fi. Попутно я также продемонстрирую, как еа
Светодиодная матрица RGB 64x32 с Arduino Mega: 6 шагов
Светодиодная матрица RGB 64x32 с Arduino Mega: мне понравилось учиться использовать светодиодную матрицу и адресуемые светодиоды. С ними очень весело, когда вы понимаете, как это сочетается. Я собрал этот учебник, объясняющий каждый шаг простым и понятным образом, чтобы другие могли его усвоить. Так что наслаждайтесь. Ле
Светодиодная лента RGB с Wi-Fi и ESP8266: 5 шагов
Светодиодная лента RGB с управлением через Wi-Fi и ESP8266: Идея состоит в том, чтобы создать светодиодную подсветку, которой можно будет управлять через Wi-Fi. У меня есть запасная светодиодная лента от Рождества, поэтому я передаю ее в ESP8266, что позволяет управлять светодиодом через Wi-Fi. ESP8266 может работать как веб-сервер, это с
Музыкальная реактивная светодиодная лента RGB с кодом - WS1228b - Использование Arduino и микрофонного модуля: 11 шагов
Музыкальная реактивная светодиодная лента RGB с кодом | WS1228b | Использование Arduino и микрофонного модуля: Создание музыкальной реактивной светодиодной ленты WS1228B с использованием Arduino и микрофонного модуля. Используемые детали: Arduino WS1228b Светодиодная лента Звуковой датчик Макетные перемычки Блок питания 5 В, 5 А