Общие сведения
ИК-приемник TSOP2238 — позволяет управлять проектами на расстоянии с помощью обычного ИК-пульта от телевизора или другой техники.
Характеристики
- Питание: 2.5 - 5В;
- Ток питания: 950мкА;
- Несущая частота: 38кГц;
- Диапазон Передачи: 45м;
- Направленность: 45°;
- Фильтр для PCM частоты
- Температурный режим: -25 - 85°C;
Подключение
Для удобства подключения к Arduino воспользуйтесь Trema Shield, Trema Power Shield, Motor Shield или Trema Set Shield.
- 1 — SIGNAL - к любому цифровому выводу Arduino;
- 2 — 5V;
- 3 — GND;
Подробнее о ИК-приёмнике
Для работы с ИК-приёмником рекомендуем вам воспользоваться библиотекой iarduino_IR.
Примеры
Проверка наличия данных поступивших с ИК-пульта, осуществляется функцией check(). Эта функция реагирует на нажатие кнопок ИК-пульта, но если её вызывать с параметром true
, то она будет реагировать и на удержание кнопок.
Чтение данных с любого пульта, реагируем только на нажатие кнопок
#include <iarduino_IR_RX.h> // Подключаем библиотеку для работы с ИК-приёмником iarduino_IR_RX IR(7); // Объявляем объект IR, с указанием вывода к которому подключён ИК-приёмник <b>void</b> setup(){ Serial.<b>begin</b>(9600); // Инициируем передачу данных в монитор последовательного порта, на скорости 9600 бит/сек IR.<b>begin</b>(); // Инициируем работу с ИК-приёмником } <b>void</b> loop(){ <b>if</b>(IR.check()){ // Если в буфере имеются данные, принятые с пульта (была нажата кнопка) Serial.println(IR.data, HEX); // Выводим код нажатой кнопки Serial.println(IR.length ); // Выводим количество бит в коде } }
В данном скетче функция check() вызывается без аргументов, значит и реагирует она только на нажатия кнопок ИК-пульта.
Чтение данных с любого пульта, реагируем на удержание кнопок
#include <iarduino_IR_RX.h> // Подключаем библиотеку для работы с ИК-приёмником iarduino_IR_RX IR(6); // Объявляем объект IR, с указанием вывода к которому подключён ИК-приёмник <b>void</b> setup(){ Serial.<b>begin</b>(9600); // Инициируем передачу данных в монитор последовательного порта, на скорости 9600 бит/сек IR.<b>begin</b>(); // Инициируем работу с ИК-приёмником } <b>void</b> loop(){ <b>if</b>(IR.check(<b>true</b>)){ // Если в буфере имеются данные, принятые с пульта (удерживается кнопка) Serial.println(IR.data, HEX); // Выводим код нажатой кнопки Serial.println(IR.length ); // Выводим количество бит в коде } }
В данном скетче функция check() вызывается с параметром true
, значит и реагирует она как на нажатия, так и на удержания кнопок ИК-пульта.
Комплектация
- 1х ИК-приёмник TSOP2238
Ссылки
- DataSheet;
- Библиотека iarduino_IR;
- Описание основных функций библиотеки;