openocd配合J-link下载调试程序
文章仅为个人学习记录或所遇到的问题记录,谢谢!硬件:1、J-link V9 过J-link连接操作芯片2、STM32F103ZET6 以STM32F103ZET6为例软件:1、OpenOCD-20231002-0.12.0 openocd软件可以到官网上下载2、zadig-2.6 zadig修改j-link驱动,修改后配合openocd使用3、MobaXterm 输入命令步骤1:打开zadig,选
前言
文章仅为个人学习记录或所遇到的问题记录,谢谢!
一、硬件工具和软件
硬件:
1、J-link V9
过J-link连接操作芯片
2、STM32F103ZET6
以STM32F103ZET6为例
软件:
1、OpenOCD-20231002-0.12.0
openocd软件可以到官网上下载
2、zadig-2.6
zadig修改j-link驱动,修改后配合openocd使用
3、MobaXterm
输入命令
二、配置环境与下载代码
1、配置环境
步骤1:
打开zadig,选择Option->List All Device,在下拉框中找到BULK interface,选择修改的驱动为winusb,点击replace driver,等待驱动修改成功。如果后续想再使用j-link驱动调试烧录程序,需要重新安装j-link驱动
步骤2:
到openocd\share\openocd\scripts\interface文件夹下找到jlink.cfg文件,使用笔记本打开输入以下命令。对连接接口进行配置
步骤3:
打开windows命令行,将路径修改到openocd->bin(bin文件下有openocd.exe文件),输入命令openocd -v,可以获得openocd的版本信息。路径为绝对路径
步骤4:
输入openocd -f <jlink.cfg文件路径> -f <stm32f1x.cfg文件路径>,
jlink.cfg文件在下载的openocd\share\openocd\scripts\interface\jlink.cfg下,
stm32f1x.cfg文件在openocd\share\openocd\scripts\target\stm32f1x.cfg下。
两个路径都为绝对路径。
出现以下信息,表明openocd已经通过jlink获取到芯片的信息
步骤5:
打开MobaXterm,选择session->Telnet,名字输入localhost,端口名输入4444,进入以下界面就可以正常输入命令进行操作了
2、下载代码
环境配置好后,如果烧录文件为hex文件,输入program <hex文件路径>。如果烧录文件为bin文件,输入program <bin文件路径> <bin文件烧录地址>
在下载完成后,输入reset对芯片进行复位。代码就可以正常运行了。
注意:
(1)hex文件路径:路径为hex的绝对路径
(2)这里hex和bin文件的绝对路径中间以 " / "表示下级目录,windows中以 " \ "表示下级路径,如果提示找不到烧录文件,请查看符号是否正确
三、常用命令
命令 | 说明 |
---|---|
halt | 内核暂停运行 |
resume | 内核恢复运行 |
reset | 复位芯片 |
program <文件路径><烧录地址> | 烧录代码 |
init; reset init;flash erase_address <FLASH起始地址><FLASH大小> | 芯片FLASH擦除 |
mdw<地址><长度> | 按字读取数据 |
mww<地址><长度> | 按字写入数据 |
help | 获取命令说明 |
如果想获取openocd其他命令信息,请在命令行中输入help命令,获取openocd命令说明。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)