// приём команд с пульта
// приёмник подключать на прерывание по FALLING
#include <NecDecoder.h>
NecDecoder ir;
#include <NecEncoder.h>
NecEncoder enc(3);
void setup() {
Serial.begin(9600);
// подключил на D2, прерывание 0
attachInterrupt(0, irIsr, FALLING);
}
// в прерывании вызываем tick()
void irIsr() {
ir.tick();
}
void loop() {
// если пакет успешно принят
if (ir.available()) {
// выводим весь пакет (32 бита)
Serial.print(ir.readAddress(), HEX);
Serial.println(ir.readCommand(), HEX);
Serial.print("0x");
Serial.println(ir.readPacket(), HEX);
enc.send(ir.readAddress(), ir.readCommand());
}
}