工廠使用j-flash工具進(jìn)行燒錄,發(fā)現(xiàn)燒錄后的數(shù)據(jù)和發(fā)布的hex文件數(shù)據(jù)對應(yīng)不上,經(jīng)過深入對比和分析,初步確定在j-flash界面上編輯了燒錄的數(shù)據(jù)造成的錯誤。

在j-flash界面上,修改了數(shù)據(jù),未保存,將紅色提示,但是燒寫的時(shí)候用的是編輯區(qū)的數(shù)據(jù),也就是改后的數(shù)據(jù),這樣就和發(fā)布的hex數(shù)據(jù)對應(yīng)不上了,為了避免這種現(xiàn)象發(fā)生,想辦法讓這個編輯區(qū)不顯示出來:
1、最小化數(shù)據(jù)編輯區(qū)(部分版本不支持最小化,目前用的6.82c版本不支持最小化)
2、鎖死編輯區(qū)(目前沒找到對應(yīng)選項(xiàng))
接著想有沒更加好的辦法呢???
于是想到兩個:官方是不是有???二是動手自己弄一個???
第一種方法:
在segger列表中,有一個J-Flash Lite軟件可用

1、打開軟件,選擇對應(yīng)目標(biāo)芯片類型


2、選擇下載接口類型與下載速率

3、配置好之后,點(diǎn)擊OK按鈕進(jìn)入主界面

4、選擇對應(yīng)的燒錄文件
5、點(diǎn)擊Program Device按鈕進(jìn)行燒寫,電腦上有多個jlink下載器的,會提示選擇

6、選擇對應(yīng)的下載器后,將開始燒寫

7、燒寫出錯、燒寫成功,最后log提示

燒寫過程中會有一個對應(yīng)的進(jìn)度顯示界面

第二種方法:
第一種方式對于工廠生產(chǎn)來說還是相對麻煩一點(diǎn),大多是不清楚目標(biāo)燒寫芯片型號的,想想能不能固定或者有對應(yīng)的映射呢???
于是想到j(luò)-link工具可以使用命令行方式進(jìn)行操作的,動手進(jìn)行實(shí)驗(yàn):
1、編寫燒錄腳本,創(chuàng)建一個text文檔

因?yàn)槲译娔X上插著兩個j-link下載器,圖中第一行就是指定某一個下載器的sn,如果只有一個的話,第一行可以不用
不加上并且有多個下載器的話,也會進(jìn)行提示讓選擇
查看jlink下載器sn方法:
A、部分下載器直接有一個標(biāo)簽,標(biāo)簽上面就印有
B、當(dāng)沒有標(biāo)簽或者標(biāo)簽上面沒有印的時(shí)候,可以使用命令進(jìn)行獲取


啟動指令窗體即可讀取到sn,或者輸入usb指令也可以讀取到
2、電腦打開cmd指令窗口,并輸入如下指令

3、指令輸入完畢,回車后將啟動燒錄

4、燒錄完畢后會提示燒錄成功并運(yùn)行

5、燒錄過程中如果出錯,會有對應(yīng)的log提示
燒錄過程會有一個對應(yīng)的操作進(jìn)度提示窗體

最后:
批量燒寫,每次輸入指令比較麻煩,可以寫一個腳本進(jìn)行調(diào)用操作,這樣節(jié)省每次鍵入指令造成出錯麻煩
鑒于鍵入指令和運(yùn)行腳本不夠直觀,jlink指令操作繁瑣,于是寫了一個界面進(jìn)行管理,這樣美觀了不少

設(shè)備類型,界面上轉(zhuǎn)換成了對應(yīng)的項(xiàng)目代碼,對于工廠,直接按照工單的項(xiàng)目代碼/類型進(jìn)行選擇即可,簡單明了,對應(yīng)芯片型號在軟件代碼上進(jìn)行映射
界面上沒有做jlink下載器選擇項(xiàng),所以啟動燒寫的時(shí)候,會提示選擇對應(yīng)的下載器



審核編輯:湯梓紅
-
命令
+關(guān)注
關(guān)注
5文章
746瀏覽量
23390 -
HEX
+關(guān)注
關(guān)注
0文章
37瀏覽量
17332 -
Jlink
+關(guān)注
關(guān)注
6文章
114瀏覽量
39261
原文標(biāo)題:幾種用jLink命令行燒錄hex文件的方法
文章出處:【微信號:技術(shù)讓夢想更偉大,微信公眾號:技術(shù)讓夢想更偉大】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
STM32G070RB使用jlink命令行下載無法識別芯片怎么解決?
請問一下jlink的命令行的正確用法?
jLink命令行hex文件燒錄的過程
labview 調(diào)用命令行燒錄時(shí)如何實(shí)時(shí)顯示過程和進(jìn)度?
caxa命令行中的應(yīng)用
使用MCUXpresso直接燒錄hex文件

幾種用jLink命令行燒錄hex文件的方法
評論