[转]J-Link Commander的妙用
转自http://maker.zlgmcu.com/portal.php?mod=view&aid=3685
J-Link Commander作为J-Link驱动软件包的一个工具之一,为工程师的MCU调试工作提供了很好很强大的功能,善加利用能帮我们解决大问题,本文将介绍一下J-Link Commander的一些经典用例。
1
妙用1:检测目标芯片
拿到一块新的MCU开发板,一般情况下,有经验的工程师马上会为开发板供电,并将开发板通过JTAG(或SWD)接口连接至J-Link。然后打开J-Link Commander工具,若检测到下面图片所示的信息:目标板电压;目标芯片ID;目标芯片内核,则说明开发板基本能正常工作且能通过J-Link 调试。
若检测到的目标板电压为0V那么就要确认目标板供电是否正常;
若测到的目标板电压为3.3V左右,但还是无法检测到目标芯片,那么通常都是JTAG(或SWD)线缆没有接好,或者MCU的JTAG(或SWD)相关引脚被MCU里面的程序禁用了,这时候就需要检查线缆或者擦除MCU里面的程序了。
除了打开J-Link Commander的时候会自动检测目标芯片,在J-Link Commander里面输入命令“usb”也会执行目标芯片的检测。

2
妙用2:暂停内核,获取内核通用寄存器信息
大多数工程师都碰到过程序跑飞或进入HardFault的情况,但苦于没有好的方法来定位程序跑飞的位置。
今天教大家一个妙招:当MCU里面的程序跑飞的时候,不要断电,将MCU连接到J-Link,打开J-Link Commander,并输入命令“halt”。这样,就能暂停内核,获取内核通用寄存器信息。
有了PC指针和SP指针的内容,就能很方便的定位到程序在哪里死掉了,或者程序在进入HardFault之前执行了什么指令。这个方法是不是对定位程序问题很有用啊!

3
妙用3:丰富的命令,强大的功能
J-Link Commander的强大之处远不止于此,想要使用更多功能,只需在J-Link Commander里面输入“?”就能够获取所有能使用的指令,如:
f —— Firmware info用来查看Jlink的硬件版本;
h ——halt用来停止MCU内核,可以查看内核的PC指针等特殊寄存器;
g ——go用来激活被halt的内核;
Sleep ——Waits the given time (in milliseconds). Syntax: Sleep <delay>用来延时;
s ——Single step the target chip单步调试代码,可以先执行halt,然后再来单步调试;
st ——Show hardware status显示Jlink当前状态;
hwinfo ——Show hardware info显示Jlink 的硬件信息。

J-Link Commander是不是很好很强大呀!工程师们可以凭借自己的兴趣与能力深入挖掘J-Link Commander的各种功能。
[转]J-Link Commander的妙用的更多相关文章
- 一个文件夹可以link 到另外一个文件夹
Creates a symbolic link. MKLINK [[/D] | [/H] | [/J]] Link Target /D Creates a directory symboli ...
- 牛客多校第四场 J Free 最短路
题意: 求最短路,但是你有k次机会可以把路径中某条边的长度变为0. 题解: 跑k+1次迪杰斯特拉,设想有k+1组dis数组和优先队列,第k组就意味着删去k条边的情况,每次松弛操作,松弛的两点i,j和距 ...
- 玩转WIN7的MKLINK
引言: 换了新电脑,终于再次使用上啦WIN7 ,经过一个周每天重装N次系统,终于弄好一个像样的系统啦.由于使用rt7lite对WIN7SP1官方整合包进行了适当精简,所以最终系统的稳定性还得经过一段时 ...
- 【纪中集训】2019.08.10【NOIP提高组】模拟 A 组TJ
T1 Description Solution 有待填坑-- T2 Description 给定一个\(h(≤10)\)层.\(n(≤10)\)行.\(m(≤10)\)列的由泥土组成的立方体,挖开\( ...
- [JZOJ1900] 【2010集训队出题】矩阵
题目 题目大意 题目化简一下,就变成: 构造一个\(01\)数列\(A\),使得\(D=\sum A_iA_jB_{i,j}-\sum A_iC_i\)最大. 问这个最大的\(D\)是多少. 正解 其 ...
- windows7命令帮助大全
有关某个命令的详细信息,请键入 HELP 命令名ASSOC 显示或修改文件扩展名关联.ATTRIB 显示或更改文件属性.BREAK 设置或清除扩展式 CTRL+C 检查.BCDEDIT 设置启动数据库 ...
- [转]Windows7文件夹转移清理臃肿的C盘
当你使用Windows的时候,你会发现无论哪个版本的Windows,系统都会默认将用户文件夹和程序数据文件夹(xp下是Documents and Settings文件夹,而windows7和vista ...
- SharePoint 快捷获取列表栏内部名称
在列表设置页面点击浏览器书签获取列表字段内部名称,使用效果如下图: 如何使用: 修改浏览器上任意书签的url地址为以下代码,注意:代码中不能有换行符 javascript:(function(){va ...
- bzoj1189
1189: [HNOI2007]紧急疏散evacuate Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 2321 Solved: 724[Submi ...
随机推荐
- Android WebView 开发详解
Android WebView 开发详解 参见 http://blog.csdn.net/typename/article/details/39030091
- Lzma(7-zip)和zlib
Lzma(7-zip) 使用: 在C目录中有算法文件,进入Util\LzmaLib目录,编译生成LIB库,导出了以下两函数,LzmaCompress 为压缩函数,LzmaUncompress 为解压缩 ...
- Excel中输入1时单元格显示为勾
如图:
- 珍藏的数据库SQL基础练习题答案
自己珍藏的数据库SQL基础练习题答案 一,基本表的定义与删除. 题1: 用SQL语句创建如下三张表:学生(Student),课程表(Course),和学生选课表(SC),这三张表的结构如表1-1到表1 ...
- 【ZZ】技能表合集
技能表 http://w.itcodemonkey.com/tag/373.html 1 当一名黑客应该学什么?来看看安全工程师技能表 2 软件测试工程师技能表 3 大数据.数据挖掘技能表 4 C/C ...
- windows修改远程桌面端口3389
regedit 按照路径打开,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-T ...
- c#day03
c#中的随机数 Random random = new Random(); //随机1~200之间的一个数 random.Next(,); //怪兽:防御为10,血量为10 //玩家:随机8~12的攻 ...
- Maven 包含资源文件
Maven打包时,如何包含资源文件(src/main/java | src/main/resources): 参考博客:http://blog.csdn.net/jsflzhong/article/d ...
- 《Linux 性能及调优指南》1.6 了解Linux性能指标
翻译:飞哥 (http://hi.baidu.com/imlidapeng) 版权所有,尊重他人劳动成果,转载时请注明作者和原始出处及本声明. 原文名称:<Linux Performance a ...
- Android Studio快捷键Ctrl+Shift+F不能用,全局搜索不能用;
AS全局搜索Ctrl+Shift+F突然就不能用了,在AS找半天没有找到问题,原因竟然是和搜狗输入法的简繁切换冲突了:下面有图把简繁切换关闭或更换快捷键后,as的全局搜索就能用了: