|
MyLibs 1.0
Расширенные библиотеки для STM32
|
Дефайны для работы с serial трассировкой (SWO, RTT) More...
Macros | |
| #define | my_printf(...) |
| Универсальный макрос для вывода трассировки | |
| #define | log_printf(TAG, fmt, ...) |
| Макрос логирования с поддержкой уровней LOG_LEVEL. | |
| #define | local_time() |
| Локальное время | |
| #define | LOG_LEVEL 1 |
| Уровень логирования (по умолчанию == 1) | |
Дефайны для работы с serial трассировкой (SWO, RTT)
В зависимости от настроек определяется дефайн my_printf() и log_printf() для работы с трассировкой:
RTT_TRACE_ENABLE - для RTT это будет вызов функции SEGGER_RTT_printf()
Предварительно надо подключить библиотеку SEGGER RTT (SEGGER_RTT.h) и вызвать функцию SEGGER_RTT_Init()
SWO_TRACE_ENABLE для SWO это будет просто printf()
Предварительно надо подключить библиотеку STDOUT и retarget под ITM:
Manage Run-Time Environment -> Compiler -> I/O -> STDOUT -> ITM
Для SWO также надо включить трассировку:
Options For Target -> Debug -> Debugger Settings
В вкладке Debug:
| #define my_printf | ( | ... | ) |
| #define log_printf | ( | TAG, | |
| fmt, | |||
| ... ) |
Макрос логирования с поддержкой уровней LOG_LEVEL.
| TAG | Тэг лога |
| fmt,... | Форматируемая строка |
Варианты реализации: