跳转至

SuperWatch:把运行中的变量画出来

无需占用业务串口,也不用编写专门的打包协议。SuperWatch 从当前 AXF/ELF 中查找变量,通过调试口读取,让变化直接出现在网页上。

30 MHz 档的真实错相正弦波

STM32F103RET6 真机,9 路错相正弦波。

第一次画曲线

  1. 在 配置 中加载与板上固件匹配的 AXF/ELF,并连接设备。
  2. 打开 仪表盘 → SuperWatch,搜索变量并勾选。
  3. 日常观察先用 10 MHz、1 ms 间隔,应用设置后点击“开始”。
  4. 覆盖一个完整的变化过程,再暂停查看或停止采集。

把目标、反馈和输出画在一起,让我看看有没有过冲。

目标、反馈和输出

STM32 板上的 PID 演示模型,不驱动实际电机。

四档速度,按需要选择

支持的目标可选 低速 4 MHz、中速 10 MHz、高速 20 MHz、极速 30 MHz。停止采集后切换档位,应用完成再开始。调试时钟决定链路工作档位,实际采集速度还与数据量、目标芯片和连接条件有关。

STM32F103RET6 的完整数据持续读取成绩如下:

采集内容 4 MHz 10 MHz 20 MHz 30 MHz
单个 RAM 变量,4 B 61,011 次/秒 116,901 次/秒 175,057 次/秒 193,449 次/秒
4 个连续变量,共 16 B 10,152 组/秒 20,063 组/秒 28,372 组/秒 32,213 组/秒
连续 RAM,每块 4 KiB 274.837 KiB/s 578.965 KiB/s 881.522 KiB/s 1,061.556 KiB/s

30 MHz 单变量采用 120 秒长测;另一次 20 秒持续采集约 20.17 万次/秒。按完整数据时间戳统计持续读取速度。4 个变量全部读完才算一组,采集速度也不等于网页刷新帧率。

观察时以页面和保存数据的实际速度为准,不能把设置的间隔直接当成测量结果,也不能把多通道点数相加后称为单通道速度。STM32 实战和 HPM 实战提供对应板卡的完整说明。

波形一闪而过,用触发留住它

选定触发变量,设置边沿和阈值,使用“单次”模式。条件满足后,保留事件前后的数据,适合查看突变或异常。

SuperWatch 单次触发

HPM 示例的单次捕获。

想量周期或两个位置的差值,打开 A/B 光标,放到关注的位置。周期可用同一通道相邻波峰的时间差判断。

A/B 光标查看差值

数组和外设,也能直接观察

看数组随时间变化:展开数组,勾选需要的元素,各自形成曲线。

看整段数组的分布:选择数组父项并设置范围,横轴按元素索引显示,适合查看缓冲区和查找表。

数组快照

看外设状态:切到“芯片外设”,选择准确型号与可用字段。目录由对应芯片描述提供,不要求工程符号文件;轮询可能漏掉短脉冲,精确高速时序仍需专用仪器。

保存数据,交给 AI 比较

用 PNG 留下画面,用 CSV 保存数据,再让 AI 分析:

比较这两次响应,算一下过冲、稳定时间和最后的误差。

只修改工程里明确设计为可调的参数,写前保留原值,写后回读。修改前后的负载和观察条件保持一致,具体用法见用曲线调 PID / FOC。

改完程序后,记得更新符号

配置页显示“自动跟踪”时可跟随原文件变化;显示“文件快照”时需要重新选择。符号重载会停止相关采集,确认对应固件已下载后再启动。

暂停图表或切换页面不会停止采集。 要下载新程序、交给其他工具操作,或避免有限缓冲覆盖旧数据时,请明确停止并及时保存。