AVR-context
Низкоуровневое переключение контекста и асимметричные stackful coroutines для многопоточности на AVR
Установка
Последняя опубликованная версия- Скачайте архив — реестр отдает его уже проверенным.
- В Arduino IDE выберите «Скетч → Подключить библиотеку → Добавить .ZIP библиотеку».
- Укажите скачанный файл — библиотека появится в списке доступных.
SHA-256:7c625ed47668fd399cef8e2eb2b583d07c90d5f823426c4ac2735363699023f1AVR_context-0.9.1-7c625ed4.zipОписание
Низкоуровневое переключение контекста для многопоточности на AVR-микроконтроллерах. Библиотека предоставляет набор функций (avr_getcontext, avr_setcontext, avr_makecontext, avr_swapcontext) и макросов для сохранения и восстановления машинного состояния, работающие по аналогии с UNIX-функциями getcontext/setcontext. Поверх этого базиса реализованы асимметричные stackful coroutines через avr_coro_init, avr_coro_resume, avr_coro_yield и avr_coro_state. На такой основе можно строить кооперативную или вытесняющую многозадачность, сложные механизмы обработки ошибок и профилирование. Работает на стандартных Arduino-платах с AVR, хотя новые megaAVR-платы (вроде Arduino Nano Every) официально не протестированы.