Проблемы с работой ИК датчика.

Paul_it
Offline
Зарегистрирован: 25.06.2019

Здравствуйте, жители форума! В общем я решил сделать ИК управление, чтобы при нажатой кнопке шел сигнал, а при отпущенной нет. Скоммуниздил код и библиотеку к ИК датчику, подключил правильно датчик, дуину, светодиоды включил светодиод пультом, вроде все работает. Но только пока включение одной кнопкой, и отдельное выключение другой. Когда попробовал сделать так, как задумал. При нажатой кнопке датчик мерцает, как будто в цикле loop поставлена задержка ~40 млс. Кто знает как исправить?

Код:

#include <boarddefs.h>
#include <IRremote.h>
#include <IRremoteInt.h>
#include <ir_Lego_PF_BitStreamEncoder.h>



IRrecv irrecv(A0);
decode_results results;

void setup() {
  irrecv.enableIRIn();

  pinMode(10, OUTPUT);
  pinMode(12, OUTPUT);
  pinMode(A0, INPUT);

  Serial.begin(9600);
}

void loop(){
  if (irrecv.decode(&results)) 
  {
    Serial.println(results.value);
    unsigned long r = results.value;
    while (r == 3843267751 || r == 2891014758) {
      Serial.println("forward");
      digitalWrite(12, HIGH);
      digitalWrite(12, LOW);
      r = 0;
    }
    while (r == 3826490130 || r == 2907792379) {
      Serial.println("backward");
      digitalWrite(10, HIGH);
      digitalWrite(10, LOW);
      r = 0;
    }
    while (r == 2568141210 || r == 10463599) {
      Serial.println("right");
      r = 0;
    }
    while (r == 3189060206 || r == 3684511895) {
      Serial.println("left");
      r = 0;
    }
    irrecv.resume();
  }
}

 

strarbit
Offline
Зарегистрирован: 12.06.2016

если кнопка имеет зажат имеет код повтор близнец, ожидание новый код повтор близнец и время счет (время ~130?ฆ это значение от протокол ณฑ)ฝ если время финиш и код повтор близнец нет, работа (нагрузка) конец.

Paul_it
Offline
Зарегистрирован: 25.06.2019

?

trembo
trembo аватар
Offline
Зарегистрирован: 08.04.2011

Гугле перевод с тайского.

ЕвгенийП
ЕвгенийП аватар
Offline
Зарегистрирован: 25.05.2015

Paul_it пишет:

?

Выводите в монитор порта, что приходит с датчика - не только распознанные коды, а все. Узнаете много интересного.