Частые ошибки

Обсуждение проекта на ассемблере(avra) операционной системы реального времени для Atmega
w5277c
Сообщения: 18
Зарегистрирован: 16 мар 2022, 11:18

Частые ошибки

Непрочитанное сообщение w5277c »

Встроенный в ядро функционал логирования
Такой тип логирования потребляет много ресурсов, достаточно для того, чтобы повлиять на работу в критических местах(где необходима быстрая реакция и точное выдерживание таймингов). Так как реализация UART программная и работает на большом baudrate.

Также необходимо внимательно выбирать порт логирования, были случаи когда порт для логирования уже был задействован на PCB.

К примеру:
В проекте шлюза USB в 5277. Шлюз не успевал отвечать Java контроллеру, так как вывод лога выполнялся в задаче обработки пакета и занимал больше времени чем таймаут Java контроллера.
В проекте диммера. Наблюдалось одиночное мигание лампы при обработке пакета данных шины 5277.


Решение:
Логирование реализовано для диагностики, рекомендую его отключать при воспроизведении проблемы, ну и конечно же в релизе.
Также есть драйвер логирования, который работает на низком baudrate и такого влияния не оказывает.

*возможна в будущем доработка - возможность логирования через драйвера UART.

Управление процессами в блоке инициализации процесса
В ядре не предусмотрена вышеописанная возможность.
Создание процессов должно выполняться в основном блоке MAIN до запуска ядра.
Ответить