Считывание импульсов

Мне только нужно чтоб в диапазоне импульсов от 1100-1500 появлялся минус на 2 пине,больше ничего все другие диапазоны это передачи а 1100-1500 нейтраль

вот вроде вставил что нужно

Обратный апостроф - тот, который на кнопке ё

понял))

bool flag_imp = false;
unsigned long old_millis;
unsigned long count;  // счетчик

void setup() {
  // Устанавливаем прерывание
  // Функция myEventListener вызовется тогда, когда
  // на 2 пине (прерываниие 0 связано с пином 2)
  // изменится сигнал c LOW на HIGH
  attachInterrupt(0, myEventListener, RISING);  // ловим LOW-HIGH
  old_millis = millis();
}

void loop() {
  if (flag_imp) {
    count++;
    delayMicroseconds(50);
    flag_imp = false;
  }
  if (millis() - old_millis >= 1000) {
    // считаем импульсы
    if (count > 1100 && count <= 1500) {
      // тут что-то делаем
      digitalWrite(13, HIGH);
      digitalWrite(2, LOW);
    } else {
      digitalWrite(13, LOW);
      digitalWrite(2, HIGH);
    }
    count = 0;
    old_millis = millis();
  }
}

void myEventListener() {
  flag_imp = true;
}

тут с 0 пина считывает импульсы? что тто я совсем не понимаю

читайте комментарий в коде

Когда разберетесь, на каком пине - может вам станет очевидно, какую ошибку вы посадили, редактируя код

убрать про 2пин все мои добавления?я не понимаю нифига.digitalWrite уже не надо писать?

Ну вы прочитали коммент? Разобрались, на каком пине читаются ваши импульсы?

это вам решать, надо или нет. Но не стоит выводить сигнал на тот же пин, с которого вы его читаете - так работать не будет

@franhzyz Константин, не с Вами ли мы сегодня общались на перекуре, в одном подмосковном городе?

Дон Румата? :roll_eyes:

А на кепкой пин сделать ,чтоб на нем - появлялся?

Нет)не я был)

эта логика работает в положительных уровнях, если нужен минус, это совсем другая логика, может тебе всё таки не минус нужен?

Мне нужен инул на пине когда инмпульсы будут в пределах 1100 -1500,ну если - никак нельзя то наверное можно и с + что то придумать

и что это такое?

минус

какой мощности? какой ток там будет идти?

Это просто сигнал будет,для сигнализации старлайн .промтт она до 5в плюс не видит ,а минус видит

тогда просто добавь 4-ре строки
в setup()
pinMode(5, OUTPUT);

там где нужна земля

digitalWrite(5, LOW);

в остальных двух

digitalWrite(5, HIGH);

1 лайк