QDispatch
Кооперативная многозадачность для Arduino с синхронным выполнением задач по расписанию и реакцией на события
Установка
Последняя опубликованная версия- Скачайте архив — реестр отдает его уже проверенным.
- В Arduino IDE выберите «Скетч → Подключить библиотеку → Добавить .ZIP библиотеку».
- Укажите скачанный файл — библиотека появится в списке доступных.
SHA-256:a5f474a289bebe0b89bb1dc1410cdb5479e4e944ada77cd1b4a53327e4e8b258QDispatch-1.0.0-a5f474a2.zipОписание
QDispatch решает проблему, когда нужно запустить на Arduino несколько задач параллельно, но встроенный обработчик прерываний становится узким местом. Библиотека реализует кооперативную многозадачность — задачи работают синхронно, одна за другой, но каждая может остановиться на нужной точке и отдать управление следующей. Это позволяет имитировать асинхронное поведение, разбив длительные операции на короткие куски. Основной механизм — TaskDispatcher, который запускает задачи по расписанию или с задержкой, и EventBarrier для реакции на внешние события. Поддерживаются callbacks к методам объектов, так что код организуется объектно-ориентированно. Хороший выбор, если вы работаете с несколькими одновременными процессами и не хотите сложности настоящей операционной системы.