Можно ли подключить более одного ИК-приемника к Arduino Uno?

Я хочу использовать #include <UNremote.h><UNremote.h> для получения информации с инфракрасного пульта дистанционного управления. Он отлично работает с одним ИК-приемником.

Но я хочу поставить три или четыре ИК-приемника:

IRrecv irrecv6(pin6);
IRrecv irrecv7(pin7);
IRrecv irrecv8(pin8);
IRrecv irrecv9(pin9);
IRrecv irrecv10(pin10);

И:

void setup() {
  Serial.begin(9600);
  irrecv6.enableIRIn(); // Start the receiver
  irrecv7.enableIRIn(); // Start the receiver
  irrecv8.enableIRIn(); // Start the receiver
  irrecv9.enableIRIn(); // Start the receiver
  irrecv10.enableIRIn(); // Start the receiver
}

Внутри функции цикла я проверяю каждый вывод, чтобы узнать, получены ли какие-либо данные. Но только последний контакт (что означает вывод 10 выше) получает данные, а другие-нет.

, 👍0

Обсуждение

вы можете подключить несколько приемников, но зачем?, @jsotola

Но всегда только один из них, который инициализируется последним, получает Данные., @Nijat2018

@jsotola вы могли бы использовать его, чтобы получить очень грубое представление о направлении, откуда пришел сигнал., @Gerben

вы нашли решение, потому что я также хочу установить 4 ИК-приемника на Arduino в своем fyp. если у вас есть решение, пожалуйста, помогите мне., @Sanaullah Kayani

Попробуйте перейти по моей ссылке https://github.com/gerivega/Arduino-IRremote Я хотел сделать то же самое. Я изменил последнюю библиотеку, чтобы включить изменения, внесенные предыдущим программистом neco777., @gerivega


2 ответа


3

Эта библиотека поддерживает только один ИК-приемник одновременно. Попробуйте эту вилку, которая, похоже, добавила поддержку нескольких приемников.

,

0

Просто добавьте некоторую задержку между irrecv.decode (), и все будет работать просто отлично.

,