跳到主要内容
版本:Next

3.3 RTT Scope

3.3.1 使用准备

SEGGER_RTT_V766b.zip 下载 (可选)

STM32F407 Scope 测试 demo

3.3.2 启动采样

开启RTT jscope 监控的流程参考如下图所示:

image-20230704172600412

  • 点击启动采样按钮。
  • 配置目标芯片和Power Debugger 之间的工作参数:接口类型,时钟速度,以及RTT 控制块搜索配置(可选)。
  • 点击确定按钮。
  • 等待RTT 初始化完毕。

初始化完成后,将看到如下jscope 的监控通道,如下所示:

image-20230704172750410

同时,将看到jscope 的输出测试正玄波信息,如下所示:

GIF 2023-07-04 17-33-27

3.3.2 添加任意对象监控

3.3.2.1 获取对象信息

通过编译demo,查看编译输出map文件信息,查找结构体,类似的信息如下所示,可知m_VarScope 的地址为 0x200011c8,如下所示:

#pragma pack(push,1)
typedef struct S_WatchScope{
float f32; //offset: 0
int32_t i32; //offset: 4
uint32_t u32; //offset: 8
uint16_t u16; //offset: 12
int16_t i16; //offset: 14
int8_t i8; //offset: 16
uint8_t u8; //offset: 17
bool b8; //offset: 18
}S_WatchScope;
#pragma pack(pop)

volatile S_RTTScope m_RTTScope;

map 中查看对应的信息,可查找对应的地址为如下所示.

    m_VarScope                               0x200011c8   Data          19  main.o(.bss)

3.3.2.2 添加监控

除了可以添加监控自定义变量外,还支持通过解析.axf .elf .out文件,快速导入变量。

1 手动添加变量

点击添加对象按钮image-20230704170436212,弹出添加对象属性设置框,如下所示,根据界面内容,依次设置变量命名、波形颜色、是否添加后使能、以及变量地址和变量类型,然后点击确定按钮,如下所示:

image-20230704175045730

接下来,在RTT Scope左下角添加需要监控的所有的结构体成员,最终添加完成后,如下所示

image-20230704151516430

2 通过解析文件导入变量

点击添加对象按钮image-20230704170436212,弹出添加对象属性设置框,点击右下角从.axf .elf .out文件快速导入,选择路径下axf,elf或者out文件,勾选需要监控的变量,同时支持设置数组偏移量,如下图所示:

image-20230704175045730

image-3

提示

添加自定义监控时,请先停止采样。

3.3.2.3 启动采样

选择需要监控的对象,然后启动采样,即可看到输出,如下所示。

GIF 2023-07-04 17-56-47

3.3.4 停止采样

点击【停止采样】按钮进行停止。

3.3.5 复位芯片和运行状态切换

可通过点击【复位芯片】和【运行(暂停)】按钮执行目标芯片复位、以及Run 和 Halt状态的切换。

3.3.6 参考

更多信息请参考 参考指南-RTT Scope