DelayFunctions
Неблокирующие таймеры на основе millis() для асинхронной работы с временем в loop() без использования delay()
Установка
Последняя опубликованная версия- Скачайте архив — реестр отдает его уже проверенным.
- В Arduino IDE выберите «Скетч → Подключить библиотеку → Добавить .ZIP библиотеку».
- Укажите скачанный файл — библиотека появится в списке доступных.
SHA-256:a90a8b37c8a95b52422e916e5a5136728bd777a6f7542553dabb159dc9c9dba9DelayFunctions-1.0.0-a90a8b37.zipОписание
Когда нужно в одном скетче следить за несколькими таймерами одновременно — LED мигает, кнопка отскакивает, датчик периодически опрашивается — обычный delay() парализует весь код. DelayFunctions решает это через неблокирующие таймеры на основе millis(), которые работают в фоне прямо внутри loop(). Библиотека динамически выделяет память под количество таймеров, которое вы указываете, позволяет менять интервалы на лету без перезагрузки, и вызывает callback-функцию, когда время истекло. Поддерживает Arduino и ESP. Переполнение счётчика millis() теоретически учтено, но толком не тестировалось. Подходит для задач, где нужна асинхронная работа с временем без усложнения логики основной программы.