谷动谷力

 找回密码
 立即注册
查看: 1376|回复: 0
收起左侧

几种用jLink命令行烧录hex文件的方法

[复制链接]
发表于 2022-11-15 19:09:08 | 显示全部楼层 |阅读模式
本帖最后由 sunsili 于 2022-11-15 19:11 编辑

几种用jLink命令行烧录hex文件的方法

工厂使用j-flash工具进行烧录,发现烧录后的数据和发布的hex文件数据对应不上,经过深入对比和分析,初步确定在j-flash界面上编辑了烧录的数据造成的错误。
640?wx_fmt=png.jpg
在j-flash界面上,修改了数据,未保存,将红色提示,但是烧写的时候用的是编辑区的数据,也就是改后的数据,这样就和发布的hex数据对应不上了,为了避免这种现象发生,想办法让这个编辑区不显示出来:
1、最小化数据编辑区(部分版本不支持最小化,目前用的6.82c版本不支持最小化)
2、锁死编辑区(目前没找到对应选项)
接着想有没更加好的办法呢???
于是想到两个:官方是不是有???二是动手自己弄一个???
第一种方法:
在segger列表中,有一个J-Flash Lite软件可用
640?wx_fmt=png.jpg
1、打开软件,选择对应目标芯片类型
640?wx_fmt=png.jpg 640?wx_fmt=png.jpg
2、选择下载接口类型与下载速率
640?wx_fmt=png.jpg
3、配置好之后,点击OK按钮进入主界面
640?wx_fmt=png.jpg
4、选择对应的烧录文件
5、点击Program Device按钮进行烧写,电脑上有多个jlink下载器的,会提示选择
640?wx_fmt=png.jpg 6、选择对应的下载器后,将开始烧写 640?wx_fmt=png.jpg
7、烧写出错、烧写成功,最后log提示
640?wx_fmt=png.jpg
烧写过程中会有一个对应的进度显示界面
640?wx_fmt=png.jpg 第二种方法:
第一种方式对于工厂生产来说还是相对麻烦一点,大多是不清楚目标烧写芯片型号的,想想能不能固定或者有对应的映射呢???
于是想到j-link工具可以使用命令行方式进行操作的,动手进行实验:
1、编写烧录脚本,创建一个text文档
640?wx_fmt=png.jpg
因为我电脑上插着两个j-link下载器,图中第一行就是指定某一个下载器的sn,如果只有一个的话,第一行可以不用
不加上并且有多个下载器的话,也会进行提示让选择
查看jlink下载器sn方法:
A、部分下载器直接有一个标签,标签上面就印有
B、当没有标签或者标签上面没有印的时候,可以使用命令进行获取
640?wx_fmt=png.jpg 640?wx_fmt=png.jpg
启动指令窗体即可读取到sn,或者输入usb指令也可以读取到
2、电脑打开cmd指令窗口,并输入如下指令
640?wx_fmt=png.jpg
3、指令输入完毕,回车后将启动烧录
640?wx_fmt=png.jpg
4、烧录完毕后会提示烧录成功并运行
640?wx_fmt=png.jpg
5、烧录过程中如果出错,会有对应的log提示
烧录过程会有一个对应的操作进度提示窗体
640?wx_fmt=png.jpg 最后:
批量烧写,每次输入指令比较麻烦,可以写一个脚本进行调用操作,这样节省每次键入指令造成出错麻烦
鉴于键入指令和运行脚本不够直观,jlink指令操作繁琐,于是写了一个界面进行管理,这样美观了不少
640?wx_fmt=png.jpg
设备类型,界面上转换成了对应的项目代码,对于工厂,直接按照工单的项目代码/类型进行选择即可,简单明了,对应芯片型号在软件代码上进行映射
界面上没有做jlink下载器选择项,所以启动烧写的时候,会提示选择对应的下载器
640?wx_fmt=png.jpg 640?wx_fmt=png.jpg 640?wx_fmt=png.jpg


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|深圳市光明谷科技有限公司|光明谷商城|Sunshine Silicon Corpporation ( 粤ICP备14060730号|Sitemap

GMT+8, 2024-4-17 01:57 , Processed in 0.088680 second(s), 37 queries .

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表