打印
[开发工具]

玩转APM32之Jlink commander的常用命令

[复制链接]
1120|6
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
本帖最后由 onemoren 于 2025-5-15 14:54 编辑

#技术资源# #有奖活动# #申请原创#    @21小跑堂
          玩转APM32之Jlink commander的常用命令

APM32芯片跑飞?死机?Hardfault?
遇到这种意想不到的场景不知道怎么办?高手会想到用Jlink commander查询一下信息,你会吗?
今天我来为大家介绍一下Jlink commander这个工具的几个常用命令,助你丝滑玩转APM32芯片。

1、mem:按字节读内存
命令格式为: mem <地址> <读取个数>。
比如以APM32F411芯片为例,想要读取F411的RCC时钟控制与状态寄存器(RCC clock control & status register),该寄存器地址为0x40023800+0x74,则输入mem 0x40023874 4即可。

2、mem32:按字(4字节)读内存
命令格式为 mem32 <地址> <读取个数>。
比如以APM32F411芯片为例,想要读取F411的RCC时钟控制与状态寄存器(RCC clock control & status register),该寄存器地址为0x40023800+0x74,则输入mem32 0x40023874 1即可。

3、W4:按字(4字节)写内存
命令格式为 W4 <地址> <写入的数据>。
比如以APM32F411芯片为例,想要向SRAM地址0x20000100写入数据0xA5A5A5A5,则输入W4 0x20000100 0xA5A5A5A5即可。

4、h:Halt停止
即停止CPU运行,输入该指令后可以查看PC指针等信息。

5、g:全速运行
输入该指令后CPU即开始运行,如果开发板上有LED,会看到程序在运行,灯在闪烁。

6、s:单步运行
输入该指令后,CPU会执行一个汇编指令。(注意,必须在CPU Halt状态下才可以使用单步运行指令,即在使用单步运行前,需要先调用“h”指令。)

7、r:复位CPU
输入该指令后,MCU发生一次复位,程序重新开始运行。

总结一下常用指令:

  usb--------连接目标板
  r----------重启目标板
  halt-------停止cpu运行的程序
  loadbin----加载可执行的二进制文件
  g----------跳到代码段地址执行
  s----------单步执行(调试用)
  setpc-----设置pc寄存器的值(调试用)
  setbp-----设置断点
  Regs-------读寄存器组织,该命令会把所有的寄存器显示出来
  wreg-------写寄存器
  mem--------读内存
  w4---------写内存
  power off mmu---关闭mmu,这个对于裸板调试很重要
  w4 cpsr,0x0000001f------切换到系统模式
  speed------设置jtag的传输速率
  rce 0,c0,c0,0-----设置cp15寄存器的第1个寄存器为0



还有比较少用的,有兴趣的同学可以试试:   
ite       32-bit items. Syntax: w4 ,(hex)(读内存32字节)
wm        Write test words. Syntax: wm
is        Identify length of scan chain selectregister
ms        Measure length of scan chain. Syntax: ms
mr        Measure RTCK react time. Syntax: mr
q         Quit(推出)
qc        Close JLink connection andquit(关闭jlink连接,并退出)
r         Reset target       (RESET)(重启目标)
rx        Reset target        (RESET).Syntax: rx (延时重启)
RSetType   Set the current reset type. Syntax:RSetType
Regs      Display contents of registers(显示寄存器信息)  指令用于读寄存器组织,显示所有寄存器的信息
wreg       Writeregister.   Syntax: wreg , (写继承器)
SetBP      Setbreakpoint.   Syntax: SetBP [A/T][S/H](设置断点)
SetWP      SetWatchpoint. Syntax: [R/W] [ [] [A-Mask]](设置监视点)
ClrBP      Clearbreakpoint. Syntax: ClrBP  (清除断点)
ClrWP      Clearwatchpoint. Syntax: ClrWP  (清楚监视点)
VCatch     Write vector catch.Syntax: VCatch
loadbin    Load binary file intotarget memory.(下载bin文件到目标内存) 指令用于加载可执行二进制文件
           Syntax: loadbin ,
savebin    Saves target memoryinto binary file.(保存BIN文件)
           Syntax: savebin , ,
SetPC      Setthe PC to specified value. Syntax: SetPC (设置PC(r15)寄存器) 指令的作用是设置PC寄存器的值
le        Change to little endian mode(设置成小端模式)
be        Change to big endian mode(设置成大端模式)
log       Enables log to file.  Syntax:log
等等。


使用特权

评论回复
评论
onemoren 2025-5-15 14:55 回复TA
@21小跑堂 :增加描述了。感谢提醒 
21小跑堂 2025-4-27 17:23 回复TA
感谢大佬分享!论坛原创审核需满足800字,目前500+,辛苦大佬填充内容后再次@21小跑堂进行审核~ 
沙发
真的问题不大| | 2025-4-25 16:58 | 只看该作者
无意看了点进去楼主发帖里看了下,楼主之前总结的这些经验帖跟教程贴对新手都很友好啊,感谢了

使用特权

评论回复
板凳
jobszheng| | 2025-4-25 19:04 | 只看该作者
我们使用loadbin命令,太赞了
想放哪就放哪!

使用特权

评论回复
地板
cooldog123pp| | 2025-4-26 13:37 | 只看该作者
现在玩国产单片机需要这么深入了?都要把jlink的命令搞熟悉了?现在都是DAPlink了 jlink好多都用不了了

使用特权

评论回复
5
和谐智者| | 2025-5-16 23:41 | 只看该作者
jlink毕竟是商用的,还是要好用一些。
jlink ob也是兼容上面的命令的

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

40

主题

58

帖子

2

粉丝