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

描述

工厂使用j-flash工具进行烧录,发现烧录后的数据和发布的hex文件数据对应不上,经过深入对比和分析,初步确定在j-flash界面上编辑了烧录的数据造成的错误。

命令

在j-flash界面上,修改了数据,未保存,将红色提示,但是烧写的时候用的是编辑区的数据,也就是改后的数据,这样就和发布的hex数据对应不上了,为了避免这种现象发生,想办法让这个编辑区不显示出来:

1、最小化数据编辑区(部分版本不支持最小化,目前用的6.82c版本不支持最小化)

2、锁死编辑区(目前没找到对应选项)

接着想有没更加好的办法呢???

于是想到两个:官方是不是有???二是动手自己弄一个???

第一种方法:

在segger列表中,有一个J-Flash Lite软件可用

命令

1、打开软件,选择对应目标芯片类型

命令

命令

2、选择下载接口类型与下载速率

命令

3、配置好之后,点击OK按钮进入主界面

命令

4、选择对应的烧录文件

5、点击Program Device按钮进行烧写,电脑上有多个jlink下载器的,会提示选择

命令

6、选择对应的下载器后,将开始烧写

命令

7、烧写出错、烧写成功,最后log提示

命令

烧写过程中会有一个对应的进度显示界面

命令

第二种方法:

第一种方式对于工厂生产来说还是相对麻烦一点,大多是不清楚目标烧写芯片型号的,想想能不能固定或者有对应的映射呢???

于是想到j-link工具可以使用命令行方式进行操作的,动手进行实验:

1、编写烧录脚本,创建一个text文档

命令

因为我电脑上插着两个j-link下载器,图中第一行就是指定某一个下载器的sn,如果只有一个的话,第一行可以不用

不加上并且有多个下载器的话,也会进行提示让选择

查看jlink下载器sn方法:

A、部分下载器直接有一个标签,标签上面就印有

B、当没有标签或者标签上面没有印的时候,可以使用命令进行获取

命令

命令

启动指令窗体即可读取到sn,或者输入usb指令也可以读取到

2、电脑打开cmd指令窗口,并输入如下指令

命令

3、指令输入完毕,回车后将启动烧录

命令

4、烧录完毕后会提示烧录成功并运行

命令

5、烧录过程中如果出错,会有对应的log提示

烧录过程会有一个对应的操作进度提示窗体

命令

最后:

批量烧写,每次输入指令比较麻烦,可以写一个脚本进行调用操作,这样节省每次键入指令造成出错麻烦

鉴于键入指令和运行脚本不够直观,jlink指令操作繁琐,于是写了一个界面进行管理,这样美观了不少

命令

设备类型,界面上转换成了对应的项目代码,对于工厂,直接按照工单的项目代码/类型进行选择即可,简单明了,对应芯片型号在软件代码上进行映射

界面上没有做jlink下载器选择项,所以启动烧写的时候,会提示选择对应的下载器

命令

命令

命令

审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分