Несколько таймеров в одном

Памагити мне это развидеть!?!?

ест но в оригинале не так конечно , когда сверху копировал #define попало

а вообще “не ошибается тот кто ничего не делает” повторюсь еще раз , ну нет у меня пока достаточных знаний и наработок.

вот вы как большой специалист по таймерам !!! , даже библиотеку свою написали а ничего кроме насмешек ничего не ответили .

А просто взять библиотеку не судьба ? Или нужен свой велосипед … с квадратными колесами ???

DetSimen этого кудесника или какую ? в принципе я все сделал но для общего развития думаю будет полезно попробовать другие варианты..

Так это не единственная ошибка, там ещё много такого

Для общего развития было бы полезно если бы вы хотя бы проверили код на ошибки, прежде чем показывать.

что еще ? , мне для работы над ошибками .

это да мой косяк , с телефона писал.

Так эти знания нужно приобретать.
При том - приобретать осознанно: изучать язык, на котором пытаетесь писать, а не надеяться, что беспорядочно стуча по клавишам, вдруг внезапно получите “Войну и мир”.

Программа пишется не методом копирования или переставления строчек (это безусловно неработоспособный способ, который не может привести к положительному результату), а набирают от руки. “Писать программу” и “копировать программу” - разные понятия.

Не делайте так больше.
На данном форуме писать с телефона считается mauvais ton.

виноват исправлюсь

Да хотя бы по моей ссылке выше :wink:

Это сильно!

дед уже рыдал #18

Не, я плакал. Но не от всего серца, не навзрыд. :slight_smile:

Как по мне, работу с миллис надо обязательно освоить. Тем более ничего сложного. А потом уже можно дальше “шагать” - к библиотекам, ит.д
Вот простейший таймер на миллис для 4-х, независимых друг от друга событий , с разной периодичностью

Спойлер
void setup() {
  Serial.begin(115200);
}

void loop() {

  static uint32_t last_millis_1 = 0;
  static uint32_t last_millis_2 = 0;
  static uint32_t last_millis_3 = 0;
  static uint32_t last_millis_4 = 0;

  if (millis() - last_millis_1 >= 500 ) //событие происходит
  { //каждые 500мс
    last_millis_1 = millis();
    Serial.println("timer_1");
  }

  if (millis() - last_millis_2 >= 1000 ) //событие поиходт
  { //каждые 1000мс
    last_millis_2 = millis();
    Serial.println("timer_2");
  }

  if (millis() - last_millis_3 >=  1500 ) //событие прсхоит
  { //каждые 1500мс
    last_millis_3 = millis();
    Serial.println("timer_3");
  }

  if (millis() - last_millis_4 >= 2000 ) //событие просходит
  { //каждые 2000мс
    last_millis_4 = millis();
    Serial.println("timer_4");
  }

}
Спойлер

Может туда-же или рядом сохранить?

Да полно уже вроде примеров, я простейший привёл…

Ну да, потому то ента тема и появилась :grinning_face:

Как будто туда кто-то заглядывает ))

они все думают, что их проблема уникальна…