Цитата(Jenya7 @ Mar 20 2018, 12:02)

У меня по всему коду разбросанны сообщения типа
printf ("LIB ID = %d\n", lib_id);
. . .
Сейчас нужно некоторые сообщения логировать в файл на SD карте.
. . .
Как вообще сделать покрасивше?
Rem:
ф-ия printf довольно "массивная" из-за своей универсальности. Соотв-но время на ее работу немалое.
Вам возможно имеет смысл пересмотреть структуру вывода на терминал и логгирования
с точки зрения "событийности".
При возникновении события вместо "балета" с формированием строки через printf и выводом ее на USART
фиксировать данные по этому событию в бинарной форме { Timestamp, CodeEventId , DataEvent }.
При этом все пишется в очередь, из которой эти записи извлекаются и выводятся в лог (без переформатирования)
и на терминал (через парсер-конвертер с printf)
Неэффективно использовать в лог-массивах данные в не оптимальном "человеческом" формате.
Их неудобно обрабатывать, они занимают больше места.