Skip to content

v1.0.6.1 修复 ELF 变量地址解析坍缩的问题

Latest

Choose a tag to compare

@SummerFalls SummerFalls released this 08 Oct 04:41

Note

本工具套件分为 4 个软件:

软件 说明
HSS_DataVisualizer Std / Pro SEGGER J-Link / J-Trace 专用数据可视化工具
UNI_DataVisualizer Std / Pro 通用数据可视化工具,支持 DAP-Link / ST-Link V2(固件版本 v2.26 及以上)/ ST-Link V3(固件版本 v3.2 及以上)/ J-Link / Black Magic / FTDI(Olimex ARM-USB 系列调试器)/ WCH-Link / CH347usbjtag / Glasgow Interface Explorer 等调试器

4 个软件均支持 High-Speed-Sampling (HSS) 和 Real-Time-Transfer (RTT) 模式,通过 SWD / JTAG 接口,对 MCU RAM 中的全局变量进行非侵入式的后台高速访问,并实时将波形和数据可视化到用户界面。

Important

注意事项

  1. 若运行报错(如缺少动态链接库),请安装 vcredist_x64.exe 和 vc_redist.x64.exe 运行库。
  2. 8字节整形变量、double类型尚未支持

💡 带缓存 MCU 调试注意事项提示

HSS / RTT 两种通信模式启动时,新增日志提示:监控变量或 RTT 相关内存需放置在 MCU 的 非缓存区或做好缓存维护,避免读到脏数据。

专业版03 专业版04 CSV波形回放 观测列表分组管理

HSS/UNI DataVisualizer v1.0.6.1 更新日志


一、新增功能

本版本为问题修复版本,无新增功能,修复内容详见「问题修复」。


二、功能改进

本版本无功能改进。


三、问题修复

  1. 修复 ELF 变量地址解析坍缩的问题:使用 clang/LLVM 21 及以上工具链(如 Renesas RA8P1 的 ATfE 21.1.1)编译的固件,编译器会为同节区的多个全局变量生成「共享基址 + 各自偏移」形式的调试信息;此前程序只读取共享基址、忽略了偏移量,导致这些变量全部解析到同一个地址,同时观测时数据互相串扰、多个变量显示相同数值(例如三个变量都解析到 0x22001FC4,实际应分别为 0x22001FC4 / 0x22001FC8 / 0x22001FCC)。现在偏移量会被正确累加,每个变量均解析到各自的真实地址,观测读数与 J-Scope 等第三方工具一致。同时新增自动化回归测试覆盖该场景,防止此类问题再次出现。

四、性能优化

本版本无性能优化。


五、兼容性说明

  1. 工程文件完全兼容:本次修复仅涉及 ELF 调试信息解析,工程文件格式无任何变化,直接升级即可,无需迁移。
  2. GCC 与旧版工具链不受影响:使用 GCC 或较旧版本 LLVM 编译的固件,解析行为与之前保持一致。
  3. 升级提示:若此前遇到过「多个变量读数相同 / 互相串扰」的现象,升级后重新加载 ELF 固件开始采样即可,无需修改任何工程配置。

📌 其它说明

  • 组态画布功能、CSV波形回放功能、观测列表分组、排序等功能仅在 HSS_DataVisualizer Pro / UNI_DataVisualizer Pro 中提供,Std 版本不包含此功能