Привет, народ! Столкнулся с проблемой. Как в этом куске кода реализовать задержку на millis ()??? Дело в том, что на delay основная программа сильно тормозит, таймер который ведёт отсчёт зависает на время выполнения этого действия

Комментарии: 11

  1. Anonim

    Не использовать делей Это есп или ардуино?

    • Murad

      Как написать строчку нужно? Пример приведите. Ардуино.

      • Anonim

        Просто не использовать делей, а отсчитывать секунды и использовать условия if, чтоб не блокировать основной поток. Или использовать threadы, таски и так далее. Логично, что если ты блокируешь поток то ничего хорошего не выйдет

        • Murad

          К примеру? Как отсчитывать если это выполняется внутри if?

          • Anonim

            Хз. Поставить переменную что нужно выполнить ДРУГУЮ задачу Отсчитать секунды и когда они наступят выполнить ее и так далее

            • Serge

              Разность, конечно, сравниваешь

              • Anonim

                Вести состояния что тебе щас нужно делать Смотришь там между стартом операции 1 прошло 1 секунда, выполняешь операцию 2, и так далее Впрочем новичку это тяжко. Посмотри в сторону зреадов

        • Serge

          Ты понимаешь, что так можно ненароком воспитать кодера, которому для моргания диодом нужна RPI?

          • Anonim

            Так к этому всё и идет собственно. Современные кодеры вообще в оптимизацию не умеют. Они просто идут к дяде и кричат - не хватает минералов ядер/памяти. Нужно еще 100 гигов Нахуй вообще в программе после malloc вызывать free? Программа завершит выполнение и все освободится

      • Saw

        просто, пиши и все. Получится строчка

      • Serge

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

Не нашли ответ?

Вам также может быть интересно