TrimWright
Иерархические конечные автоматы (UML State Machines) для управления сложной логикой на Arduino
Установка
Последняя опубликованная версия- Скачайте архив — реестр отдает его уже проверенным.
- В Arduino IDE выберите «Скетч → Подключить библиотеку → Добавить .ZIP библиотеку».
- Укажите скачанный файл — библиотека появится в списке доступных.
SHA-256:6eb3e22179cce8d4a20c80a878fd9b2c70e6eb75284b648e63aadbb160244920TrimWright-0.10.0-6eb3e221.zipОписание
Если вы пишете на Arduino сложную логику с множеством состояний и переходов, вручную управлять ею становится беспорядочно. TrimWright реализует UML иерархические конечные автоматы — каждое состояние это метод объекта, и библиотека отслеживает, какое из них активно. Переходы инициируются возвращаемым значением метода состояния, что гарантирует полное выполнение обработки события перед переходом. Поддерживаются guard conditions, события входа и выхода из состояний. Ортогональные регионы и deferred события не реализованы. В комплекте идут классы для событий, абстрактная очередь событий и готовая реализация ring buffer. Подходит для проектов вроде конечного автомата светодиода с кнопками или других систем, где нужна четкая структура переходов между состояниями.