На моем ИК-датчике и пульте дистанционного управления показания последовательного монитора с моего Arduino uno либо случайны, либо читаются как FFFFFFFF, когда я нажимаю ту же кнопку.

ir

Я не очень хорош. Я только начал, и проблема может быть в коде, так что вот он:

#include <IRremote.h> 
int IRpin=5; 
IRrecv IR(IRpin); 
decode_results cmd; 
String myCom;
void setup() {
  // put your setup code here, to run once:
Serial.begin(9600); 
IR.enableIRIn();
}

void loop() {
  // put your main code here, to run repeatedly:
while (IR.decode(&cmd)==0){
}
Serial.println(cmd.value,HEX);  
delay(777);
IR.resume();
}

, 👍1

Обсуждение

так какой у тебя вопрос? ... добавьте в сообщение четкий вопрос, на который можно ответить, @jsotola


1 ответ


1

Попробуйте добавить Serial.println("Hello World"); после Serial.begin(9600);

Если этот текст также выходит искаженным, значит, какой бы последовательный монитор вы ни использовали, не установлена правильная скорость передачи данных (9600).

Еще одна вещь, которая приходит на ум как возможность, заключается в том, что многие пульты дистанционного управления используют совершенно другой ИК-код, чтобы указать, что кнопка нажата. Таким образом, вы можете увидеть значение 0x1020304, когда вы нажимаете кнопку, но если вы продолжите удерживать ее, она может иметь max int (все F в шестнадцатеричном формате) в качестве "кнопки повтора" код.

,

Я пробовал все это, и это все еще не работает. Заказывал новые детали, пока ничего. Независимо от того, как долго или коротко я нажимаю на нее, она все равно читает FFFFFFFF. Я также пытался изменить код для него, и он все еще не работал., @Adam