cortex-m3的ITM功能:调试信息格式化输出(SWD调试时的SWO引脚输出调试信息,JTAGSWOViewer.exe接收数据)

2019-07-21 02:26发布

附件中是调试信息格式化输出的驱动文件

用户只需要先在cm3_fw_self_config.h中配置好调试组件的功能,再调用void cm3_debug_init(void)函数和void ITM_init(void)来初始化cm3的调试组件后,就可以使用void debug_printf(uint32_t port_n, uint8_t *p_string, ...)函数来将数据输出到ITM的任意激励端口(0~31)
debug_printf()函数和printf()函数的用法完全一样,仅是多出了uint32_t port_n这个选择端口的参数


用法:
1. 在cm3_fw_self_config.h中配置调试组件
2. 初始化cm3调试组件
    cm3_debug_init();   //初始化halt_debug和monitor_debug
    ITM_init();    //初始化ITM的格式化输出功能
3. 打开JLinkSWOViewer.exe 做如下修改
    
    
4. 格式化输出
    debug_printf(10,"ITM test : %d  %u  %c  %s ",13243,56745,'A',&string[0]);

附件中是源代码

说明: 这是我项目中的一个功能,可能与其他文件有部分关联,但稍作调整就能使用


友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。