Segger Jscope波形软件在AT32 MCU的使用

cathy的头像
cathy 发布于:周一, 08/01/2022 - 09:07 ,关键词:

J-Scope简介

什么是J-Scope

J-Scope是Segger推出的一款免费软件,用于MCU运行时,实时显示数据的波形。

J-Scope分为HSS和RTT两种模式:

1)HSS模式直接使用J-Scope加载MDK或IAR的可执行文件即可,操作简单但采样速度较慢;
2)RTT模式只需要在用户程序里添加Segger的RTT组件,操作稍麻烦但是采样速度更快更实用。

软/硬件版本

硬件-JLINK:常见的JLINK BASE需要V9及以上版本;而JLINK PRO或JLINK ULTRA使用V4及以上版本即可。

软件-MDK:MDK4或MDK5皆可。本专题配套的例程需使用MDK5。

支持的设备

1)J-Scope在HSS(High-Speed-Sampling)模式下支持的内核如下:

“图1.
图1. HSS模式支持的设备

2)J-Scope在RTT(Real-Time Transfer)模式下支持的内核如下:

“图2.
图2. RTT模式支持的设备

不同版本JLINK速度对比

截图中的数据主要对于HSS模式说的,而RTT模式没有这些限制,基本JLINK速度支持到多大,RTT就可以达到多大。

对于JLINK BASE来说,基本都是截图里面的Other选项,也就是说在HSS模式下支持10个变量采集,采样速度1KHz。

“图3.
图3. J-Link采样速度

J-Scope环境准备

此处以MDK5为例,硬件以AT32F403A为例。

J-Scope安装

1)解压xx\AN0044_Segger_Jscope_on_AT32_MCU\JScopeTool\Setup_JScope_V6xxm.zip;

2)双击Setup_JScope_V6xxm.exe,开始安装。

3)点击点击NEXT,继续安装。

“图4.
图4. JScope安装 点击NEXT

4)点击I Agree同意协议。

“图5.
图5. JScope安装 点击I Agree

5)选择快捷方式添加位置,此处选择了添加到开始菜单,然后点击NEXT继续安装。

“图6.
图6. JScope安装 点击NEXT

6)点击Browse选择安装路径。

“图7.
图7. JScope安装 点击Browse选择安装路径

7)在弹出的界面选择路径,然后点击确认。用户可自行选择安装路径,本示例选择安装在D:\tool\J_Scope。

“图8.
图8. JScope安装 选择安装路径

8)点击Install开始安装。

“图9.
图9. JScope安装 点击Install

9)点击Finish完成安装。

“图10.
图10. JScope安装 点击Finish

安装AT32相关package

先解压xx\AN0044_Segger_Jscope_on_AT32_MCU_2.x.x\JScopeTool\PACKs_V2.x.x.zip;

然后再解压Keil5_AT32MCU_AddOn.zip

然后分别安装ArteryTek.AT32F403A_407_DFP.2.x.x.packSegger_AT32MCU_AddOn.exe。

安装ArteryTek.AT32F403A_407_DFP.2.x.x.pack

1)双击ArteryTek.AT32F403A_407_DFP.2.x.x.pack开始安装。
2)点击NEXT继续安装。

“图11.
图11. AT32 package安装 点击NEXT

3)点击Finish完成安装。

“图12.
图12. AT32 package安装 点击Finish

安装Segger_AT32MCU_AddOn.exe
1)双击Segger_AT32MCU_AddOn.exe开始安装。
2)在弹出界面点击Browse以选择安装路径。

“图13.
图13. AT32 package安装 点击Browse

3)选择安装路径:注意,安装路径必须选择JLink的安装路径,否则找不到JLinkDevices.xml,无法安装。

“图14.
图14. AT32 package安装 选择安装路径

4)点击Start,开始安装。

“图15.
图15. AT32 package安装 点击Start

5)若安装成功,会绿色字体提示安装成功。

“图16.
图16. AT32 package安装 安装成功

6)若安装失败,则会红色字体提示失败原因:此处是安装路径不对,因此找不到JLinkDevices.xml文件。重新安装,正确选择安装路径为JLink安装路径即可。

“图17.
图17. AT32 package安装 安装失败

HSS(High Speed Sampling) 模式

HSS模式简介

HSS模式比较简单,仅需大家将MDK生成的可执行文件xxx.axf或者IAR生成的可执行文件xxx.out文件加载到JScope软件里面即可。

硬件连接:使用标准的下载接口(VCC,GND,SWDIO,SWCLK和NRST)或三线JLINK-OB(GND,SWDIO,SWCLK)即可。

优势:随时可以连接目标板,不影响目标板的正常功能,不需要额外资源。无需用户写目标板代码。

劣势:相对RTT模式,采样速度慢,基本固定在1KHZ左右,仅适用于变量变化速度低于1KHZ的情况。

使用方法

此处以MDK5为例,硬件以AT32F403A为例。

生成可执行文件

打开MDK工程,编译、下载程序,并生成可执行文件HSS.axf。

新建工程

打开J-Scope后,新建工程:

“图18.
图18. 新建工程(HSS)

配置工程

“图19.
图19. 配置工程(HSS)

1)JLINK接口选择:大家通常使用的JLINK都是USB接口,所以此处选择USB。
2)目标器件选择:此处选择AT32F403AVGT7。

“图20.
图20. 目标器件选择(HSS)

3)目标接口和速度选择:

目标接口:根据应用程序配置,选择SWD/JTAG均可。本例程选择的SWD,所以这里也选择SWD。

JLINK速度:JLINK速度配置不要太高,这里选择4000kHz。

“图21.
图21. 接口、速度选择(HSS)

4)模式选择:此处选择HSS。

5)选择可执行文件:此处在MDK例程的路径里找到可执行文件(HSS.axf)。

“图22.
图22. 选择可执行文件(HSS)

6)配置完成,点击ok,完成配置。

选择要查看的变量
1)打勾选中;
2)点击ok。

“图23.
图23. 选择要查看的变量(HSS)

开始运行

1)单击红点,开始显示数据。
2)此时跳出警告,点击OK即可。

“图24.
图24. 开始运行(HSS)

“图25.
图25. 显示的波形(HSS)

RTT(Real Time Transfer) 模式

RTT模式简介

RTT模式类似于串口上传数据。需要移植RTT组件,配置上行缓冲区,发送数据等操作。

硬件连接:使用标准的下载接口(VCC,GND,SWDIO,SWCLK和NRST)或三线JLINK-OB(GND,SWDIO,SWCLK)即可。

优势:

  • 允许比HSS更高的数据采样速度,高达2 MB/S。即使目标上有512字节的小缓冲区,也可以达到1 MB/S。
  • 数据采集与目标板应用程序的执行同步,因为应用程序决定何时采样数据。
  • 时间戳等数据可以添加到数据样本中。

劣势:

  • 需要移植RTT组件等操作,较HSS模式更麻烦一些。

使用方法

移植RTT组件

1)将以下4个文件复制到MDK工程路径下,并添加进工程。

“图26.
图26. RTT组件(RTT)

“图27.
图27. 将RTT组件添加到MDK工程(RTT)

2)使用下述函数,配置上行缓冲区:

“Segger

第一个参数:buffer索引--此处选择1;
第二个参数:数据格式--固定格式为JScope_xy;

xy支持的格式如下:

“表1.
表1. 数据格式

例如:
"JScope_u4u2":表示包含32bit无符号数据和16bit无符号数据,且数据顺序按照u4u2的排列顺序。

"JScope_t4i4u2":表示包含32bit 时间戳,32bit有符号数据和16bit无符号数据,且数据顺序按照t4i4u2的排列顺序。

第三个参数:缓冲区buffer选择;
第四个参数:buffer size;
第五个参数:模式--使用RTT模式的话,最后一个参数仅支持SEGGER_RTT_MODE_NO_BLOCK_SKIP和SEGGER_RTT_MODE_BLOCK_IF_FIFO_FULL。此处选择SEGGER_RTT_MODE_NO_BLOCK_SKIP。

3)调用SEGGER_RTT_Write函数发送数据:

“Segger

4)编译、下载应用程序。

打开J-Scope,新建工程

“图28.
图28. 新建工程(RTT)

配置工程

“图29.
图29. 配置工程(RTT)

1)JLINK接口选择:大家通常使用的JLINK都是USB接口,所以此处选择USB。
2)目标器件选择:此处选择AT32F403AVGT7。

“图30.
图30. 目标器件选择(RTT)

3)目标接口/速度选择:

目标接口:根据应用程序配置,选择SWD/JTAG均可。本例程选择的SWD,所以这里也选择SWD。
JLINK速度:这里选择默认的4000kHz。

“图31.
图31. 接口/速度选择(RTT)

4)模式选择:此处选择RTT。

5)配置完成,点击ok,完成配置。

开始运行
单击红点,开始显示数据。

“图32.
图32. 开始运行(RTT)

“图33.
图33. 显示的波形(RTT)

J-Scope软件介绍

界面介绍

“图34.
图34. J-Scope界面介绍

数据导出

J-Scope支持导出CSV或原始的RAW格式的数据。
1)若采样正在进行,则需要先停止运行:

“图35.
图35. 停止运行

2)点击File->Export Data:

“图36.
图36. 导出数据

3)填写文件名->点击保存:

“图37.
图37. 保存数据文件

4)打开RTT.CSV可以看到存储的数据,如下图:

“图38.
图38. 查看数据文件

快捷键

“图39.
图39. 快捷键

例程

注:所有project都是基于keil 5而建立,若用户需要在其他编译环境上使用,请参考AT32xxx_Firmware_Library_V2.x.x\project\at_start_xxx\templates中各种编译环境(例如IAR6/7,keil 4/5)进行简单修改即可。

HSS模式

1)解压并打开xx\AN0044_Segger_Jscope_on_AT32_MCU_2.x.x\SourceCode\J-Scope_HSS_V2.x.x。
2)应用程序定义两个全局变量Test_Data1,Test_Data2。

3)新建J-Scope工程,再选中采样变量(Test_Data1,Test_Data2),再点击开始运行即可。

“图40.
图40. 应用程序HSS

RTT模式

1)解压并打开xx\AN0044_Segger_Jscope_on_AT32_MCU_2.x.x\SourceCode\J-Scope_RTT_V2.x.x.
2)移植RTT组件;

3)main.c包含SEGGER_RTT.h文件;

4)定义两个全局变量Test_Data1,Test_Data2;5)上行缓冲区配置:

5)上行缓冲区配置:

“Segger

6)数据输出:

“Segger

7)然后新建J-Scope RTT工程,再点击运行即可观察波形。

“图41.
图41. 应用程序RTT

来源:AT32 MCU 雅特力科技
免责声明:本文为转载文章,转载此文目的在于传递更多信息,版权归原作者所有。本文所用视频、图片、文字如涉及作品版权问题,请联系小编进行处理(联系邮箱:cathy@eetrend.com)。

围观 163