ИК приемник принимает только 0

Я пытаюсь расшифровать ИК-коды моего пульта Samsung tv remote
Но приемник всегда получает "0".

Схемы:

Schematics

Код:

#include <IRremote.h>      

int RECV_PIN = 11;        
IRrecv irrecv(RECV_PIN);
decode_results results;
 
void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn();
}
 
void loop() 
{
  if (irrecv.decode(&results)) 
    {
    int value = results.value;
    Serial.println(" ");
    Serial.print("Code: ");
    Serial.println(results.value); 
    Serial.println(" ");
    irrecv.resume();              
    Serial.println("*****************");
    }
}

Пожалуйста, помогите мне расшифровать мои ИК-коды

, 👍1

Обсуждение

Самая последняя версия IRremote не имеет никаких аргументов для функции " декодировать. Чтобы получить результат, вы должны использовать irrecv.results`, чтобы получить результаты., @Gerben


1 ответ


Лучший ответ:

1

Следующее обновление с 3.1 библиотеки, вам нужно вызвать irrecv.decodedIRData.decodedRawData, чтобы получить данные. Этот код сработал для меня:

#include <IRremote.h>

int IRpin = 11;
IRrecv irrecv(IRpin);

void setup()
{
  Serial.begin(9600);
  irrecv.enableIRIn(); // Запуск приемника
}

void loop() 
{
  if (irrecv.decode()) 
    {
      Serial.println(irrecv.decodedIRData.decodedRawData); // Печать серийного номера
      irrecv.resume(); // Получить следующее значение
    }
}
,