STM32CubeIDE调试工具之SWV(串行线查看器)

STM32CubeIDE调试工具之SWV(串行线查看器)本文详细介绍了如何使用 ST Link 调试器 STM32CubeMX 和 STM32CubeIDE 进行 STM32 的硬件准备 软件配置 包括设置 SYS JTDO TRACESWO 配置 FCLK 时钟 以及如何在程序中添加 printf 调用以实现调试信息的打印和通过 SWV 进行实时监控

大家好,欢迎来到IT知识分享网。

  • 一、硬件准备

        需要准备含SWDIOSWDCLK以及SWO三种信号接口的ST-Link调试器。

  • 二、STM32CubeMX软件配置
  1. 在软件STM32CubeMX上,设置芯片PB3引脚为SYS_JTDO-TRACESWO
  2. 在左侧配置选择栏,选择System Core->SYS->Debug->Trace Asynchronous Sw
  3. 在顶侧选中Clock Configuration,记住最右侧的FCLK时钟频率。

  • 三、STM32CubeIDE软件配置
  1. 在界面最上侧工具栏中,选择运行->调试配置,在弹出窗口中,选则调试器设置界面,在串行线查看器(SWV)类型框内,勾选使能Core Clock (MHz)设置为FCLK时钟频率,其他保持默认。
  2. 在界面最上侧工具栏中,选择项目->属性,在弹出界面中,在左侧选择C/C++构建->设置,然后在右侧工具设置中,勾选Use float with printf from newlib-nano(-u _printf_float),以此允许打印浮点数。

  • 四、程序配置
  1. main.h中添加
    #include <stdio.h>
  2. main函数前添加
    int _write(int file , char *ptr,int len) {     int DataIdx;     for(DataIdx = 0;DataIdx<len;DataIdx++){         ITM_SendChar(*ptr++);     }     return len; }
  3. 使用printf()打印调试信息,如printf(“SWO_Test!_%d\r\n”,PrintCnt+=1);
  • 五、调试
  1. 点击调试按钮,进入调试模式,等到程序阻塞HAL_Init()
  2. 在顶部选择栏选择窗口->显示视图->其他,搜索SWV,选中SWV ITM Data Console,点击打开按钮。
  3. 在界面右下侧选中SWV ITM Data Console窗口,点击工具图标(Configure trace),在弹出来的界面中勾选ITM Stimulus Ports中的Enable ports 0,然后点击确认,点击小红点(Start Trace)至右侧。
  4. 点击界面上方工具栏的继续按钮(快捷键F8)后,SWV ITM Data Console窗口打印出调试信息。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/140595.html

(0)
上一篇 2025-05-25 18:20
下一篇 2025-05-25 18:26

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信