跳到主要内容
版本:当前版本

SPAnalyzer 使用手册

免费下载 SPAnalyzer Windows 版


一、软件简介​

SPAnalyzer 是一款专为嵌入式开发者设计的调试工具,集成了多种低层硬件访问能力,支持 Flash 烧写、CPU 控制、内存访问等功能。配合 SPTrace 硬件模块,可实现强大的实时 Trace 功能,包括:

  • 指令跟踪
  • 变量可视化
  • ITM Print 输出捕获

SPAnalyzer 旨在提升调试效率,让开发者更快速定位问题、优化代码。


二、安装与启动​

系统要求​

  • 操作系统:Windows 10 或更高版本
  • 权限:普通用户权限

安装步骤​

  1. 从官网下载 SPAnalyzer-online-Setup.exe 安装包。
  2. 双击运行安装程序,根据向导完成安装。
  3. 安装完成后可在桌面或开始菜单中启动软件。

图片

图片

图片

图片

图片

图片

图片

图片

注意: SPAnalyzer 无需联网使用,也无需登录账号。


三、界面总览​

SPAnalyzer 界面主要分为三个功能页面:

  • 调试页:选择目标设备、调试器配置、CPU、 FLASH、 内存控制
  • 串口页:串口分析,接收,发送
  • TRACE页:TRACE相关的功能,指令分析,ELF解析,变量可视化,ITM输出

图片

界面风格贴近 Windows10风格,支持配置自动保存。


四、核心功能说明​

4.1 Flash 操作​

支持对常见嵌入式 Flash 芯片进行:

  • 擦除
  • 编程(烧写)
  • 校验
  • 下载 HEX/BIN 文件 在调试页面中,选中对应的调试器,对应的目标芯片,点击连接会自动连接到芯片,连接成功后会在FLASH操作区加载出芯片对应的FLASH芯片,列出每个BANK对应的扇区的详细信息,可以单独对每个扇区进行 加锁 解锁 擦除等操作。 可以对整个BANK进行读取 写入操作。 图片

在FLASH浏览器中可以直观的察看当前FLASH内容,支持滚轮自动更新页面,支持配置显示页面大小端,每个单元格的显示字节数 图片

用户可选择起始地址、区域大小,自定义烧写流程。

4.2 CPU 控制​

  • 运行 / 停止/复位

支持主流 ARM Cortex-M 架构。
图片

4.3 内存查看与修改​

  • 查看任意地址的内存内容(支持 HEX / ASCII)
  • 实时刷新
  • 手动编辑并写入目标内存
  • 可导出内存数据

内存浏览器提供了实时查看内存数据的能力,用户可以定义刷新率,定义起始的地址 图片

4.4 串口调试​

串口调试页面提供了对计算机串口配置参数,接收发送,设置显示模式等功能 图片

4.5 Trace 功能(配合 SPTrace 硬件)​

Trace 是 SPAnalyzer 的核心功能之一,提供丰富的调试信息: 这里以配套的评估板为例,演示具体的使用方法,评估板的所有资料请点击 STM32F2评估板资料

  1. 在调试页面,选择对应的选项,调试器选择cmsis-dap, 目标选择 stm32f2x, 点击连接按钮,会自动与目标板建立连接,连接成功后会自动更新FLASH/内存信息. 图片

  2. 点击切换到TRACE页面,首先需要加载ELF文件。 ELF文件提供了必要的调试信息,这些信息在分析指令执行时是必须的,需要确保以下几点

  • 当前mcu中执行的程序与这里加载的elf文件是一致的, 如果mcu中还没有程序或者cpu没有处于运行状态,需要先使用FLASH相关的操作,将程序加载到mcu中运行起来,参考 [这里](#4.1 Flash 操作)
  • elf文件中必须包含调试信息,需要确保在编译中添加了-g选项,这样在生成的elf文件中才会包含调试信息部分,不同的IDE与编译器的操作方法可能不太一致,这里提供一些 常用IDE添加调试信息的方法

图片

确保elf文件正常加载后,可以在DWARF/函数/文件等窗口看到相应的信息, 接下来就可以开始进行具体的分析了。

指令 Trace:实时捕获 CPU 执行的每一条指令(基于 ETM / PTM 协议)​

  1. 打开ETM跟踪选项,关闭其它选项 图片

  2. 点击开始跟踪按钮,等待数据开始同步解码

  3. 一切正常的话应该可以看到解码器的最大范围数值在增长,说明解码器已经解析到了ETM指令的数据流

  4. 建议停止跟踪, 然后可以控制解码器在已经解析出的指令中进行自动播放/上一步/下一步等操作,当指令命中具体的汇编/源代码中对应的窗口会执行跳转,可以直观的看到指令的执行情况. 图片

变量可视化:指定内存地址或变量名,实时绘图显示其变化​

  1. 打开ITM跟踪选项,关闭其它选项
    图片

  2. 在变量选项卡中选中需要查看的变量,这里只能选中最多4个变量,因为mcu的itm限制最大只能监控4个变量,有的mcu可能更少。
    图片

  3. 点击开始跟踪按钮,等待数据开始同步解码

  4. 一切正常的话应该可以看到数据图表中已经开始绘制图像了 图片

ITM Print 捕获:从 ITM 通道读取 printf 调试输出​

代码覆盖率:实时代码覆盖率报告​

  1. 参考 [指令Trace](#指令 Trace:实时捕获 CPU 执行的每一条指令(基于 ETM / PTM 协议))
  2. 使用播放器自动播放/上一步/下一步操作定位到需要执行到的位置,导出覆盖率报告,此时的覆盖情况是基于当前的执行到的位置的.
    图片 图片

五、SPTrace 硬件连接与调试​

硬件连接步骤​

  1. 将 SPTrace 通过 USB2 连接至 PC, USB3/以太网是可选项,当使用TRACE功能时需要使用其中一个,根据需要二选一即可。
  2. 使用 JTAG/SWD 接口连接目标板,当使用TRACE功能时需要连接TRACE相关的信号。
  3. 打开 SPAnalyzer,点击【连接】按钮,软件将自动识别设备。

六、快捷键说明​

快捷键功能
Ctrl + O打开项目
Ctrl + S保存配置
Ctrl + R开始运行目标设备
Ctrl + Shift + R重启并运行
F5开始 / 继续执行
F10单步跳过
F11单步进入
Ctrl + T开启 / 关闭 Trace
Ctrl + Q退出软件

七、常见问题解答​

软件是否需要联网?​

  • 不需要。所有功能均可离线使用。

是否需要登录账户?​

  • 不需要。软件为单机独立版。

连接不上目标板怎么办?​

  • 检查 USB 驱动是否正确安装。
  • 检查目标板是否通电。
  • 检查接口接线是否正确(SWD / JTAG)。

八、更新与支持​

软件更新​

可在官网获取最新版本安装包,支持自动提示更新。

联系我们​


感谢您使用 SPAnalyzer!

九、 附录​

常用IDE添加调试信息的方法​

  • 使用KEIL
  • 使用IAR