Содержание

@amperka/ir-receiver

Модуль для работы с модулем ИК-приёмника и другими приёмниками серии TSOP22.

Для считывания ИК-сигнала требуется опрашивать датчик в аккуратно выверенные временные окна, преобразовывать высокие и низкие сигналы в единицы и нули, и уже их преобразовывать в конечные коды кнопок. Все эти сложности спрятаны в реализации библиотеки.

var myReceiver = require('@amperka/ir-receiver').connect(P2);
 
myReceiver.on('receive', function(code, repeat) {
  if (repeat) {
    console.log('Key with code', code, 'is keeped pressed');
  } else {
    console.log('Key with code', code, 'was just pressed');
  }
});

connect(pin)

Возвращает новый объект Receiver для работы с приёмником подключённому к пину pin.

Receiver

Класс для работы с приёмником. Для создания экземпляра используйте функцию connect.

Receiver.on('receive', callback)

Событие возникает, когда приёмник успешно декодирует нажатие кнопки ИК-пульта. Вызывается обработчик callback(code, repeat):

Обратите внимание, что не все пульты посылают специальный код о зажатии кнопки.

Список кодов

Если вы используете ИК-пульт с логотипом Амперки, можно воспользоваться готовым объектом с набором кодов.

var receiver = require('@amperka/ir-receiver')
  .connect(P3);
 
receiver.on('receive', function(code) {
  if (code === receiver.keys.TOP) {
    print('TOP');
  }
  if (code === receiver.keys.POWER) {
    print('POWER');
  }
  if (code === receiver.keys.LEFT) {
    print('LEFT');
  }
  if (code === receiver.keys.RIGHT) {
    print('RIGHT');
  }
});