MWTimeout
Неблокирующие таймеры с минимальным расходом памяти для параллельного опроса датчиков и обработки событий
Установка
Последняя опубликованная версия- Скачайте архив — реестр отдает его уже проверенным.
- В Arduino IDE выберите «Скетч → Подключить библиотеку → Добавить .ZIP библиотеку».
- Укажите скачанный файл — библиотека появится в списке доступных.
SHA-256:69fe790a7d1326d46d7e19f9b419f4dd9bebbb8a30c53762fb78cb0497de18e8MWTimeout-1.0.0-69fe790a.zipОписание
Если в вашем скетче часто используется delay(), то код блокируется и не может одновременно опрашивать датчики, обрабатывать кнопки или обновлять дисплей. MWTimeout решает эту проблему: это лёгкий таймер на основе шаблонов, который занимает всего 1–4 байта памяти на экземпляр и позволяет запускать несколько независимых временных интервалов без остановки главного цикла. Вместо ручного сравнения с millis() вы просто вызываете start() и isTimeout(), не беспокоясь об ошибках переполнения или преобразовании единиц. Поддерживает компиляцию с оптимизацией через битовые сдвиги и работает на AVR, ESP32, STM32 и RP2040. Удобна для конечных автоматов и отзывчивых интерфейсов.