Не получается принять код нажатой кнопки с пульта ИК приемником с библиотекой IRremote 3.0.3

Dima4368
Offline
Зарегистрирован: 07.03.2021

Добрый день. Помогите разобраться с ИК приемником. Это мой первый скетч, управление реле с помощью пульта. Все работает, переключение есть, код с пульта получил. Но не могу разобраться до конца с получением ик сигнала. Использую библиотеку IRremote версии 3.0.3. На данный момент проблема в получении сигнала при нажатой кнопки на пульте, выдает нули.

Кнопку нажал код появился а потом нули идут. мне нужно получить код при нажатой кнопки. Мне получалось это сделать на прошлых версиях библиотеки IRremote 2.x. Был код кнопки и при удержании появлялся другой код. Как реализовать на новой библиотеки? Смотрел библиотеку на github, пробовал разные варианты, команды, но не выходит. Единственное что получилось перейти с 2.х версии на 3.х и принимать только в таком варианте сигналы. Не хватает понимания что бы разобраться в библиотеке на gitHub. Как еще можно уменьшить частоту приема сигналов, что бы реле адекватно переключалось (нажимаешь кнопку раз а проскакивает как двойное нажатие)?

#include "IRremote.h" 

#define pinIR 2 
#define pinREL1 6  
#define pinREL2 7  

boolean REL1 = 0;  
boolean REL2 = 0;  

void setup() {
  //Serial.begin(9600); 
  pinMode(pinREL1, OUTPUT); 
  pinMode(pinREL2, OUTPUT); 
  digitalWrite(pinREL1, HIGH);
  digitalWrite(pinREL2, HIGH);  
  IrReceiver.begin(pinIR, ENABLE_LED_FEEDBACK); 
}

void loop() {
  if (IrReceiver.decode()) { 
    //Serial.println(IrReceiver.decodedIRData.decodedRawData); 
    switch (IrReceiver.decodedIRData.decodedRawData) {
      case (1785214238) : 
        REL1 = pol(pinREL1, REL1);
          break;
      case (3877175040) : 
        REL2 = pol(pinREL2, REL2);
          break; 
    }
    delay(200);
    IrReceiver.resume();  
  }
}

int pol (byte pin,boolean REL) {
  if (REL == 0) {
    digitalWrite(pin, LOW);
    REL = (REL + 1);
    return REL;
    } else {
      digitalWrite(pin, HIGH);
      REL = (REL - 1);
      return REL;
      }
  }

 

NikShel
Offline
Зарегистрирован: 21.01.2018

Вас именно эта библиотека интерисует или чтобы устройство правильно работало ?

Если что, я опубликовал подобный скетч на 3 реле (можно больше или отсечь лишнее - по желанию), но библа другая.

Dima4368
Offline
Зарегистрирован: 07.03.2021

Уже начал с этой библиотекой с ней и работать)) У меня все работает. Только не получается принять код зажатой кнопки с пульта. Как мне это прописать, что получить код? У меня нули показывает когда зажимаешь кнопку.

Vadimanys
Offline
Зарегистрирован: 30.04.2021

Подскажи как получить код с кнопки с новой версии бибилотеки .