Обновить
4K+
3

Пользователь

6
Рейтинг
1
Подписчики
Отправить сообщение

Декларативный подход к текстовым протоколам в Embedded на Си. Фреймворк TACT

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели6.9K

Я занимаюсь разработкой встраиваемых систем уже несколько лет и не раз сталкивался с проблемой, когда было необходимо написать UART драйвер или систему для работы с каким-либо внешним модулем, используя текстовый протокол, будь то протокол AT-команд или что-то подобное. Чаще всего это модули GNSS, модуль GSM, ESP или т.п. Набор управляющих команд для таких модулей бесконечно огромен, и каждая из них часто требует отдельной обработки. Итогом получается нужно писать свой обработчик и парсер под каждую команду, через колбэки или некую машину состояний их последовательно вызывать и пытаться как-то организовать цепочку выполнения, а про обработку ошибок я вообще молчу.

Да, существуют библиотеки и готовые решения в рамках какой-либо операционной системы или набора SDK под конкретный чип. Но что делать, когда на столе лежит микроконтроллер с 20кб свободной RAM, где тебе надо не только команды эти обрабатывать, но еще и весь остальной функционал устройства реализовывать? Нужно что-то универсальное, независимое от платформы.....

Читать далее

Информация

В рейтинге
852-й
Зарегистрирован
Активность

Специализация

Инженер встраиваемых систем, Инженер электронных устройств
C
Assembler
Разработка программного обеспечения
Алгоритмы и структуры данных