转自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里面输入“?”就能够获取所有能使用的指令,如:

—— Firmware info用来查看Jlink的硬件版本;

——halt用来停止MCU内核,可以查看内核的PC指针等特殊寄存器;

——go用来激活被halt的内核;

Sleep ——Waits the given time (in milliseconds). Syntax: Sleep <delay>用来延时;

——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的妙用的更多相关文章

  1. 一个文件夹可以link 到另外一个文件夹

    Creates a symbolic link. MKLINK [[/D] | [/H] | [/J]] Link Target /D      Creates a directory symboli ...

  2. 牛客多校第四场 J Free 最短路

    题意: 求最短路,但是你有k次机会可以把路径中某条边的长度变为0. 题解: 跑k+1次迪杰斯特拉,设想有k+1组dis数组和优先队列,第k组就意味着删去k条边的情况,每次松弛操作,松弛的两点i,j和距 ...

  3. 玩转WIN7的MKLINK

    引言: 换了新电脑,终于再次使用上啦WIN7 ,经过一个周每天重装N次系统,终于弄好一个像样的系统啦.由于使用rt7lite对WIN7SP1官方整合包进行了适当精简,所以最终系统的稳定性还得经过一段时 ...

  4. 【纪中集训】2019.08.10【NOIP提高组】模拟 A 组TJ

    T1 Description Solution 有待填坑-- T2 Description 给定一个\(h(≤10)\)层.\(n(≤10)\)行.\(m(≤10)\)列的由泥土组成的立方体,挖开\( ...

  5. [JZOJ1900] 【2010集训队出题】矩阵

    题目 题目大意 题目化简一下,就变成: 构造一个\(01\)数列\(A\),使得\(D=\sum A_iA_jB_{i,j}-\sum A_iC_i\)最大. 问这个最大的\(D\)是多少. 正解 其 ...

  6. windows7命令帮助大全

    有关某个命令的详细信息,请键入 HELP 命令名ASSOC 显示或修改文件扩展名关联.ATTRIB 显示或更改文件属性.BREAK 设置或清除扩展式 CTRL+C 检查.BCDEDIT 设置启动数据库 ...

  7. [转]Windows7文件夹转移清理臃肿的C盘

    当你使用Windows的时候,你会发现无论哪个版本的Windows,系统都会默认将用户文件夹和程序数据文件夹(xp下是Documents and Settings文件夹,而windows7和vista ...

  8. SharePoint 快捷获取列表栏内部名称

    在列表设置页面点击浏览器书签获取列表字段内部名称,使用效果如下图: 如何使用: 修改浏览器上任意书签的url地址为以下代码,注意:代码中不能有换行符 javascript:(function(){va ...

  9. bzoj1189

    1189: [HNOI2007]紧急疏散evacuate Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 2321  Solved: 724[Submi ...

随机推荐

  1. 在windows 7中vagrant up 无反应,没任何信息输出

    本文转载自:https://blog.csdn.net/cow66/article/details/77993908 我的系统是windows 7 安装了vagrant,当运行vagrant up时, ...

  2. 有趣的background

    前言 background是css的简写形式,可以一次性定义各种背景属性,包括color.image.origin.size,repeat方式等等. background在活动项目中用的还是比较多的, ...

  3. java1.8新特性(一)

    一直在更新java 版本,原来也没有关注java版本的变化 引入的一些新的api  引起注意的还是  关于一些并发包的使用,那时候才对每个版本的特性 去了解了一下,虽然 不一定都用上了,但是不管学习什 ...

  4. 远程服务器安装mysql数据库

    https://www.cnblogs.com/renjidong/p/7047396.html 1.新开的云服务器,需要检测系统是否自带安装mysql # yum list installed | ...

  5. git安装及git命令的用法

    git安装流程 https://git-scm.com/download/win (官网下载) git安装步骤 1.双击安装包 图文解释:

  6. dialog--not attached to window manager

    该异常表示view没有添加到窗口管理器,通常是我们dismiss对话框的时候,activity已经不存在了,建议不要在非UI线程操作对话框. [解决方案]:常发生这类Exception的情形都是,有一 ...

  7. 几种常见NPE

    NPE(Null Point Exception的简称) 1.Map下的NPE 直接上代码: public class User { private Integer id; private Strin ...

  8. InfluxDB 基本认识

    一.InfluxDB 简介 InfluxDB 是用Go语言编写的一个开源分布式时序.事件和指标数据库,无需外部依赖.类似的数据库有Kairosdb.OpenTsdb等. 三大特性: 时序性(Time ...

  9. 学习js第二天小结

    if-else if       ---------适用于区间范围的判断 If(判断条件--一般是boolean类型的值或是关系表达式或是逻辑表达式 ){ 要执行的代码; }else if(判断条件) ...

  10. Android CoordinatorLayout实现多列表切换并和头布局联动;

    注意:不是双列表联动,是多列表和头布局联动: 大概就是和饿了么店铺首页类似的布局框架吧,头布局显示时,列表RecyclerView或ScrollView和头布局一起滚动,头布局完全隐藏后列表再去滚动, ...