Ик приёмник и пульт

Тема в разделе "Проводная и беспроводная связь", создана пользователем 4ERNblU, 4 июн 2021.

  1. 4ERNblU

    4ERNblU Нуб

    Что делать если каждую клавишу на пульте ИК приёмник распознает как ноль?
    Пробовал подключать другой ИК приемник и разные пульты, но результат тот же. Раньше все работало отлично а счас коды кнопок не распознаёт. Пробовал много разных скетчей, но результат не меняется.
    Код (C++):
    #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)) {
        Serial.println(results.value, HEX);
        irrecv.resume();
      }
      delay (100);
    }
     
  2. Unixon

    Unixon Оракул Модератор

    Значит сломали схему. Что изменилось то?
     
    Vovka нравится это.
  3. parovoZZ

    parovoZZ Гуру

    батарейка села
     
  4. 4ERNblU

    4ERNblU Нуб

    А как её можно было сломать?)
    вместо кодов кнопок просто нули на каждой кнопке так, и на всех пультах.
    Нашел один скетч на котором кнопки распознаются как двухзначные числа, но как только делаю простейшее включение светодиода на в com-порте снова нули.
    Вот тот скетч
    Код (C++):
    #include <IRremote.h>

    const byte IR_RECEIVE_PIN = 11;

    void setup()
    {
       Serial.begin(115200);
       Serial.println("IR Receive test");
       IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK);
    }

    void loop()
    {
       if (IrReceiver.decode())
       {
          Serial.println(IrReceiver.decodedIRData.command, HEX);
          IrReceiver.resume();
       }
    }
     
  5. 4ERNblU

    4ERNblU Нуб

    Я так же думал но так абсолютно на всех пультах
     
  6. Airbus

    Airbus Радиохулиган Модератор

    Вот не поленился и перед работой проверил первый Скетч. Всё работает коды читаются в порт выводятся.

    [​IMG]

    Ардуино УНО+IR датчик выпаянный из какого то устройства найденного на помойке.Пульт от Самсунга.Так что Уважаемый ТС проверяйте схему ,подключение,датчик,пульт. На самом деле засада где то рядом
     
  7. 4ERNblU

    4ERNblU Нуб

    А может быть такое, что ардуинка сама как-то не обрабатывает сигнал? Датчик и пульт проверил - рабочие, схема вроде бы тоже правильная, но всё равно вместо кода нули
     
  8. 4ERNblU

    4ERNblU Нуб

    И ещё появляется ошибка при первом скетче и также нули вместо кодов, может быть она как то влияет, но скетч исправляю немного ошибки нет. но нули есть.
    The function decode(&results)) is deprecated and may not work as expected! Just use decode() - without any parameter.
     
  9. Unixon

    Unixon Оракул Модератор

    Есть показометр типа осциллографа, сигнал с приемника посмотреть?
     
  10. 4ERNblU

    4ERNblU Нуб

    нету, могу скинуть ссылку на видео по которому проверял приемник)
     
  11. 4ERNblU

    4ERNblU Нуб

    Там светодиод ставится на + и out приемника и приемник к 5в подключается и на нажатие кнопок на пульте реагирует светодиод.
     
  12. b707

    b707 Гуру

    а разве пин для приемника не должен быть с внешними прерываниями?
     
  13. Unixon

    Unixon Оракул Модератор

    Ну напишите отдельный скетч со счетчиком импульсов на прерывании, посмотрите, есть ли вообще сигнал.
     
  14. b707

    b707 Гуру

    4ERNblU,

    у вас очень устарелый код, чтение результатов в массив results теперь не работает. поэтому там одни нули.
    Читайте в описании библиотеки https://github.com/Arduino-IRremote/Arduino-IRremote
    в разделе
    Converting your 2.x program to the 3.x version
     
  15. Airbus

    Airbus Радиохулиган Модератор

    Нет. Пробовал на разные и 11 как у ТС и 7 и 5. Всё прекрасно читает.
    Но ведь у меня работает?Скрин выше.Полагаю что причина не программная.Я ХЗ что куда и как он подключил.Может IR неисправен.Надо там Собаку искать
     
    Последнее редактирование: 10 июн 2021
  16. 4ERNblU

    4ERNblU Нуб

    Ну вот уже 2 приемника поменял тот же самый результат, выпаял третий рабочий на 100% из вертолета старого, на нем маркировка OHQA но вот сколько не подключал даже нули не появляются(
     
  17. 4ERNblU

    4ERNblU Нуб

    Да я понял что не программная причина, но и понять не могу в чем дело. Уже склоняюсь к тому что ардуинка не обрабатывает, хотя работает исправно.
     
  18. Unixon

    Unixon Оракул Модератор

    Ну вставьте внутрь библиотеки отладочный вывод, либо на светодиоды на свободных ногах, либо в порт.
     
  19. 4ERNblU

    4ERNblU Нуб

    Всёёё спасибо всем огромное появились коды и вроде всё работать начало))))
    Ик приемники похоже неисправны хотя раньше работали(
     
  20. 4ERNblU

    4ERNblU Нуб

    Вот код, счас проверил все 3 приемника и всё же они все рабочие)))
    Код (C++):
    #include <IRremote.h>


    const byte IR_RECEIVE_PIN = 11;



    void setup() {
      Serial.begin(9600);
      IrReceiver.begin(IR_RECEIVE_PIN, ENABLE_LED_FEEDBACK);
    }


    void loop() {
      if (IrReceiver.decode()) {
        Serial.println(IrReceiver.decodedIRData.decodedRawData, HEX);
        IrReceiver.resume();
      }
    }