Категории Статей
Популярные Статьи
Arduino, ИК(IR) приемник и пульт управления
Необходимый набор электронных компонентов: Плата Arduino UNO(или любая другая) Макетная плат ...»
Плавное мигание светодиодом с использованием ШИМ порта
Необходимый набор электронных компонентов: плата Arduino UNO(или любая другая) Макетная плат ...»
Использование RGB светодиода, эффект хамелеона :)
Необходимый набор электронных компонентов: Плата Arduino UNO(или любая другая) Макетная плат ...»

Arduino, ИК(IR) приемник и пульт управления

Необходимый набор электронных компонентов:

  1. Плата Arduino UNO(или любая другая)
  2. Макетная плата breadboard
  3. RGB светодиод с общим катодом
  4. Резисторы 220 Ом, 3 штуки
  5. Резистор 100 ом, 1 шт
  6. IR приемник 38кГц, 1 шт
  7. Пульт управления 38кГц
  8. Конденсатор электролитический 10мкф 25в
  9. Конденсатор керамический 0.1мкф
  10. Провода "папа-папа"

Софт:

  1. IRremote библиотека. Можно скачать в конце статьи
  2. Arduino IDE

Конденсаторы при подключение IR приемника применяются для подавления помех. Схема может работать и без них, но тогда возможны ложные срабатывания.

Принципиальная схема подключения:

Схема подключения на макетной плате:

Исходный код программы:


/*
 Arduino, ИК(IR) приемник и пульт управления
*/

// Подключаем библиотеку для работы с IR приемником
#include 

#define LED_PIN
int IRRECV_PIN = 2;

// Для управления цветом светодиода используем 3 ШИМ порта
int bluePin = 9;
int greenPin = 10;
int redPin = 11;

// Выставляем, на каком порту весит выход IR приемника
IRrecv irrecv(IRRECV_PIN);

decode_results res;

void setup() {
  // Включаем последовательное соединение с ПК
  Serial.begin(9600);
  // Включаем IR приемник
  irrecv.enableIRIn(); 
  // НАстраиваем выходы для нашего RGB светодиода
  pinMode(bluePin, OUTPUT);
  pinMode(greenPin, OUTPUT);
  pinMode(redPin, OUTPUT);

}

void loop() {
  // Принимаем и декодируем сигнал
  if (irrecv.decode(&res)) {
    
    // Сохраняем полученное значение в переменной
    int value = res.value;
    
    // Выводим на монитор последовательного порта значения.
    Serial.println(value);
    
    // В зависимости от кода полученного сигнала, выполняем действия. 
    // Для используемого пульта кнопки 1,2,3 - RGB свечение, 9 - выключение
    if (value == 16724175){
      setColor(255, 0, 0);
    } else if (value == 16718055){
      setColor(0, 255, 0);
    } else if (value == 16743045){
      setColor(0, 0, 255);
    } else if (value == 16732845){
      setColor(0, 0, 0);
    }
    // Даем команду получать следующее значение
    irrecv.resume(); 
  }
}

// Функция включения необходимого цвета на нашем RGB светодиоде
void setColor(int red, int green, int blue) {
  analogWrite(redPin, red);
  analogWrite(greenPin, green);
  analogWrite(bluePin, blue);
}

После загрузки программы на Arduino мы сможем управлять RGB светодиодом удаленно с помощью инфракрасного(IR) приемника и пульта управления

  Отзывов: 0
Ваше Имя:


Ваш отзыв: Внимание: HTML не поддерживается! Используйте обычный текст.

Оценка: Плохо           Хорошо

Введите код, указанный на картинке:



Последние Статьи
Выпущена новая модель миниатюрного компьютера Raspberry Pi Zero
Выпущена новая модель миниатюрного одноплатного компьютера Raspberry Pi Zero стоимостью около 5$ Гл ...»
16.12.2015    Просмотров: 473
Arduino, ИК(IR) приемник и пульт управления
Необходимый набор электронных компонентов: Плата Arduino UNO(или любая другая) Макетная плат ...»
11.03.2015    Просмотров: 7760
Управление RGB светодиодом с компьютера через USB порт
Необходимый набор электронных компонентов: Плата Arduino UNO(или любая другая) Макетная плат ...»
10.03.2015    Просмотров: 3545
Последние отзывы
Использование RGB светодиода, эффект хамелеона :)
Скорее всего перепутаны пины для RGB светодиода. Попробуйте поменять либо подключение светодиода, либо порядок вызова функции setFadeColor. ...»
05.04.2016    Просмотров: 5336
Администратор
Использование RGB светодиода, эффект хамелеона :)
Хм. Почему-то, всё ещё резкий переход у меня выходит. ...»
05.04.2016    Просмотров: 5336
Summerwind