【随手笔记】使用J-LINK读写芯片内存数据

第一种使用JLINK.exe

1. 打开j-link.exe

2.输入【usb】

在这里插入图片描述

3. 连接芯片

  1. 输入【connect】
  2. 输入芯片型号【STM32L071RB】
  3. 输入连接方式 【S】 使用SWD连接方式
  4. 输入连接速率 【4000】
  5. 连接成功

在这里插入图片描述

4. 输入【?】查看指令提示

在这里插入图片描述

5. 读写指令

Mem              Mem  [<Zone>:]<Addr>, <NumBytes> (hex)              Read memory and show corresponding ASCII values.
Mem8             Mem8  [<Zone>:]<Addr>, <NumBytes> (hex)             Read  8-bit items.
Mem16            Mem16 [<Zone>:]<Addr>, <NumItems> (hex)             Read 16-bit items.
Mem32            Mem32 [<Zone>:]<Addr>, <NumItems> (hex)             Read 32-bit items.
Write1           W1 [<Zone>:]<Addr>, <Data> (hex)                    Write  8-bit items.
Write2           W2 [<Zone>:]<Addr>, <Data> (hex)                    Write 16-bit items.
Write4           W4 [<Zone>:]<Addr>, <Data> (hex)                    Write 32-bit items.
Write8           W8 [<Zone>:]<Addr>, <Data> (hex)                    Write 64-bit items.

Erase            Erase [<SAddr>, <EAddr>]                            Erase flash (range) of selected device.
Mem 读内存
mem8 读8比特内存
mem16 读16比特内存
mem32 读32比特内存

w1 写8比特内存
w2 写16比特内存
w4 写32比特内存

h 停止cpu运行的程序,Halt,即停止CPU运行,输入该指令后可以查看PC指针等信息
setbp 设置断点
g 跳到代码段地址执行,全速运行,输入该指令后CPU即开始运行
s 单步执行(调试用)单步运行,输入该指令后CPU执行一个汇编指令,注意,必须在CPU Halt状态下才可以使用单步运行指令,即在使用单步运行前,需要先调用“h”指令。
r 复位
q 退出

数据操作都是以16进制(HEX)格式

  1. 在指定地址读8字节数据(内存以8位读)
    Mem8 0x08000500 0x08

  2. 擦除指定地址范围数据
    Erase 0x08000500 0x08000600

  3. 写入指定地址4字节数据(内存以8位写)
    W1 0x08000500 0x31 0x20 0x31 0x20

  4. 操作完成后使用指令复位一下,复位会把更改的重新烧录
    【r】复位指令

在这里插入图片描述
在这里插入图片描述

第二种方式 使用J-Flash

1. 打开软件,连接上芯片

2. 读出芯片flash数据

3. 点击写入的按钮,在窗口中特定地址写入特定的数据

示例:在特定的地址写入16个0x01
写入的数据标红
在这里插入图片描述

4. 然后重新烧录改写的固件

完成内存数据的改写

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值