[活动专区] 【开源代码】-基于国民N32G45x系列MCU使用JLINK的J-Scope组件工具

[复制链接]
5222|46
 楼主| 6552918 发表于 2022-11-9 17:34 | 显示全部楼层 |阅读模式
本帖最后由 sy12138 于 2022-11-29 14:17 编辑

#申请原创# #技术资源#
@21小跑堂 @安小芯
测试条件
IDE
硬件
软件
其他
MDK 5.37
N32G457XVL-STB V1.1J-LINK V9
SEGGER-J-LINK V7.54d
 
J-Scope是J-link的功能之一,使用Jlink连接MCU后,可以在目标MCU运行时,实时分析数据并图形化显示的软件。J-Scope可以以类似示波器的方式显示多个变量的值。它读取elf或axf文件并允许选择多个变量进行可视化。
所有提供后台存储的MCU,都可以被J-LINK通过高速采样(HSS)或实时传输(RTT)技术所访问,数据访问与程序运行是同步的,需要被观察的全局变量会被同步显示出来。
通过RTT进行数据采集(同步模式)
使用此技术时,目标应用程序执行数据采样并将结果存储在 RTT 缓冲区中,驻留在目标的内存中。J-Link 定期从 RTT 缓冲区读取数据并将其传输到 J-Scope 应用程序。
ea42ecb04a00f052ff369403441d5dab
J-Scope RTT 配置
为了使用 RTT 模式,必须在目标应用程序中实现 RTT。具体使用方法参考如下连接:https://wiki.segger.com/UM08028_J-Scope#RTT:_Instrumenting_an_application_to_use_it_with_J-Scope
下面将解释这种技术的优缺点。
优点:
允许比 HSS 高得多的数据吞吐量。最高可达 2 MB/s。即使目标上有一个 512 字节的小缓冲区,也可以达到 1 MB/s
数据采集​​与目标应用程序执行同步,因为应用程序决定何时以及什么数据被采样
J-Scope 不需要知道变量的位置。J-Scope 在连接时自动检测 RTT 缓冲区的位置。
时间戳等可以添加到数据样本中,允许将上下文中获取的数据设置为目标应用程序执行状态
不需要额外的硬件(比如 Cortex-M 上用于 SWO 的额外引脚)
缺点:
需要检测目标应用程序以提供缓冲区并在需要时将采样数据存储到其中
需要小的 RTT 缓冲区
通过HSS进行数据采集(异步模式)
使用此技术时,J-Link 会定期从后台目标上的指定地址以固定间隔读取数据,并将数据传输到 J-Scope 应用程序。
HSS 模式通过定期对内存位置进行采样来工作。因此,采样率和 elf 文件是强制性的。ELF 文件用于确定采样符号的内存地址。最好将符号声明为“易失性”,以便尽快将它们写入内存。
e824587e593cd33a4097a5bf72f54856
J-Scope HSS 配置
要使用 HSS,请选择您的目标设备和 elf 文件,然后单击确定。
385c93a1952d7a42affc8ddcd19b43b9
J-Scope 变量选择对话框
选择您要查看和分析的应用程序变量。您可以使用底部的搜索输入快速搜索变量名称、类型或地址。要选择数组元素,请输入要查看的数组索引。对于多维数组,用点、逗号或空格分隔维度索引。
单击确定以完成设置。
下面将解释这种技术的优缺点。
优点:
不需要目标应用程序的任何检测。J-Scope 可以附加到现有应用程序并开始采样
不需要额外的硬件(比如 Cortex-M 上用于 SWO 的额外引脚)
缺点:
相对较低的采样频率和最大值。与 RTT 方法相比的数据吞吐量。
最大速度。采样频率很大程度上取决于 J-Link 类型和被采样变量的数量。
数据采集​​以固定的间隔发生,并且与应用程序异步执行,因此无法将采集的数据同步到应用程序
接下来看一下实际使用过程
程序中设置3个全局变量,让3个全局变量在主循环内不断变化,并将程序下载到开发板中运行。
c66c8dce57fcdbb92ef6f48b0fb9f81a
打开J-Scope
842fb9b55cd429f4ee919d39c09310b9
23e19bef48590b42ca5d1e459aa446f3
设置相关参数
453dd894aebf2dd2a351147651f19dfc
添加.axf文件
147fcd563a56888f9b8d3df43e9e9b0d
f9be7e3d7b138e21995a64249a4d4c9b
勾选要查看的全局变量
592665a25651dbdd2791ad02cd506791
点击 f2a60e89d7b37de80e65a62c2e9677f1 开始运行
be76d3130dc2b94f4fc8ba4df879e184
由于是HSS模式,会有速度提示信息
3a29a6cf350e9cb4bd97b07d544a491e
界面说明如下:
c34cd7a418e7717ee0dc477dc58ee4ac
45eee0b4e37ce96861cbc397909cc427
7acaef17e24c2c67f673a18eca3736a7

源码: Nationstech.N32G45x_Library.2.1.0.zip (3.69 MB, 下载次数: 40)
应用笔记:

视频地址:




J-Scope 应用笔记.pdf

1.35 MB, 下载次数: 31

xu@xupt 发表于 2022-12-8 23:38 | 显示全部楼层
学习啦
cr315 发表于 2022-12-9 10:19 | 显示全部楼层
各种学习资料提供的相当全面啊
YiMichael 发表于 2022-12-26 15:42 | 显示全部楼层
alvpeg 发表于 2023-1-5 10:41 | 显示全部楼层
现在都很少实用jlink了。              
 楼主| 6552918 发表于 2023-1-5 11:14 | 显示全部楼层
alvpeg 发表于 2023-1-5 10:41
现在都很少实用jlink了。

其实也不少,JLINK还是很实用的,功能很多
timfordlare 发表于 2023-1-5 15:04 | 显示全部楼层
感觉jlink的组件好难用。              
 楼主| 6552918 发表于 2023-1-5 15:24 | 显示全部楼层
timfordlare 发表于 2023-1-5 15:04
感觉jlink的组件好难用。

那只能说你不会用,其实还是很好用的
maudlu 发表于 2023-1-6 12:40 | 显示全部楼层
这个直接串口不好用吗              
modesty3jonah 发表于 2023-1-6 13:42 | 显示全部楼层
怎么降低jlink的固件版本?              
 楼主| 6552918 发表于 2023-1-6 15:00 | 显示全部楼层
modesty3jonah 发表于 2023-1-6 13:42
怎么降低jlink的固件版本?

还真没尝试过,可以安装低版本驱动试试
sheflynn 发表于 2023-1-6 17:01 | 显示全部楼层
这个不支持盗版的。              
 楼主| 6552918 发表于 2023-1-6 17:30 | 显示全部楼层
sheflynn 发表于 2023-1-6 17:01
这个不支持盗版的。

驱动低版本的可以用,高版本的会验证是否是盗版
sdlls 发表于 2023-1-7 17:29 | 显示全部楼层
使用stlink是否支持?              
 楼主| 6552918 发表于 2023-1-7 21:06 | 显示全部楼层
sdlls 发表于 2023-1-7 17:29
使用stlink是否支持?

不支持
iyoum 发表于 2023-1-9 10:08 | 显示全部楼层
J-Scope是Jlink的一个强大的功能
 楼主| 6552918 发表于 2023-1-9 10:34 | 显示全部楼层
iyoum 发表于 2023-1-9 10:08
J-Scope是Jlink的一个强大的功能

是的,还有很多强大的功能,RTT最实用。
lzbf 发表于 2023-1-9 10:38 | 显示全部楼层
J-Scope是Segger推出的一款免费软件
 楼主| 6552918 发表于 2023-1-9 10:43 | 显示全部楼层
lzbf 发表于 2023-1-9 10:38
J-Scope是Segger推出的一款免费软件

是的,需要配合J-LINK实用
adolphcocker 发表于 2023-1-9 11:09 | 显示全部楼层
通过SWD接口或者JTAG接口  
您需要登录后才可以回帖 登录 | 注册

本版积分规则

认证:北京汇冠触摸技术有限公司/电子工程师
简介:电子工程师,嵌入式应用爱好者。

102

主题

1290

帖子

10

粉丝
快速回复 在线客服 返回列表 返回顶部