STM32 调试中 STLINK STM-STUDIO 图形化显示变量波形 代替串口

低成本的STlink是入门的必备之选了,虽然十几块钱就可以买到一个,但是他的功能一个都不少

在之前,想要把一个变量用类似示波器打印出来分析,我的做法是使用串口,发送协议数据到电脑,电脑上位机使用相同的协议解析出来每个通道的数据并且显示。

这样做有个一好处就是可以使用无线模块远程监控机器人的状态,但是很多时候,并不需要这样的功能,增加串口、写协议既繁琐又容易出错,也不能随时的变更检测对象,不便于开发

ST官方有一个叫做 STM-STUDIO 的图形化显示工具 ,我翻译了一下官方介绍并且提取了几个重要的点

  • STM Studio通过实时读取和显示其变量来帮助在运行STM32应用程序时调试和诊断它们。
  • STM Studio通过标准的ST-LINK开发工具与STM32 MCU连接。也就是说所有的ST-link都可以用
  • STM Studio是一种非侵入式工具,可保留应用程序的实时行为。不影响程序的运行
  • STM Studio是传统调试工具的完美补充,可以对应用程序进行微调。非常适合调试无法停止的应用程序,例如电机控制应用程序。调PID的时候非常有用
  • 变量查看器:实时波形,类似示波器的图形。示波器显示图形
  • 可以将数据记录到文件中,然后稍后重播数据记录方便放到matlab之类的软件中分析

STM-STUDIO的使用方法

1.打开STM-STUDIO 主界面:

stmstudio.png

2.导入MDK-ARM编译产生的axf文件
使用CUBEMX生成的工程,编译之后文件在工程目录/MDK-ARM/工程名称文件夹
我的工程名称叫做robot,那么导入文件robot/MDK-ARM/robot/robot.axf

  • 右键如图所示的空白处,选择import

    导入文件.png

  • 点击红色框框,选择 axf文件


    导入文件2.png
  • 导入之后 按照顺序,选择要检测的变量,导入变量,然后关掉这个窗口


    st_4.png

3.将变量添加到变量查看器
右键变量 Send To VarViewer1 添加变量到变量查看器1

添加到变量查看器.png

4.最终效果
这是我用来监测编码器的脉冲计数,用手转动电机,可以实时的把脉冲数的变化情况显示出来
最终显示1.png

5.添加多个变量查看器
右键左下方状态栏,选择 New Var Viewer 即可添加新的变量查看器

添加多个查看器.png

  • 左下方状态栏选中VarViewer2将 VarViewer1 as 改为 Bar Graph可以显示柱状图


    柱状图.png
  • 将 VarViewer1 as 改为 Table 可以显示文字


    文字.png

致谢

感谢strongerhuang的文章作为学习的参考,这里是他的STM-STUDIO文章,我几乎是按照他的做法实现了一遍,受益匪浅
https://www.mianbaoban.cn/mp/a4162.html

这是他的个人网站,有丰富的嵌入式资料
www.strongerhuang.com

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容