Я хочу, чтобы отладочная информация выводилась через SWO (используйте ITM). Core Cortex M3 может это сделать.Cortex M3 в привилегированном режиме
ИТМ является приложением управляемый источник трассировки, который поддерживает отладку Printf стиль для отслеживания операционной системы (ОС) и событий приложений, и выдает диагностическую информацию о системе ... link
Для этого Я должен настроить регистры ITM. Часть из них я могу писать только в привилегированном режиме.
ITM Трассировка Privilege Регистрация Используйте ITM Трассировка Privilege Зарегистрируйся, чтобы включить операционную систему, чтобы контролировать, какие стимулы порты доступны по коду пользователя. Примечание: Вы можете только зарегистрироваться на этот реестр в привилегированном режиме. see ITM Trace Privilege Register
Что это лучший способ для переключения в привилегированном режиме, если IRQs SVC, PendSV, SysTick уже используется? (Я использую FreeRTOS) Это реально?
Поскольку вам, по-видимому, нужно только один раз записать этот регистр, не можете ли вы просто сделать это в коде запуска ОС, а не пытаться переключиться в режим позже? – Notlikethat
Конечно, я могу это сделать. Но я хочу инициализировать регистры ITM в моей функции dbg_init(). – Lyrri