亚洲春色中文字幕久久久-三上亚,一吻二脱三床四吻胸,国产真实伦对白视频全集,在线毛片观看,精品成品入口黄网,国产毛aⅴ片久久久,亚洲AV色香蕉一区二区三区老师,萧皇后A级艳片,色情日本视频更新,99久久亚洲精品日本无码

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 12419|回復: 4
打印 上一主題 下一主題
收起左側(cè)

巧用J-Link+J-Flash給Kinesis燒寫序列號

[復制鏈接]
跳轉(zhuǎn)到指定樓層
樓主
ID:82781 發(fā)表于 2015-6-24 16:18 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
    類似前段時間我寫的兩篇關(guān)于知識產(chǎn)權(quán)保護芯片加密的文章,這次再聊一聊產(chǎn)品量產(chǎn)時常需要考慮的另一個問題——燒寫序列號。貌似最近跟“量產(chǎn)”杠上了,呵呵,作為產(chǎn)品生產(chǎn)周期的最后一環(huán),需要考慮的問題很多,不著急,咱以后慢慢聊,哈哈~
            在產(chǎn)品批量生產(chǎn)的時候,很多人會有這樣的需求,即將每個芯片燒寫一個唯一的ID號(Serial Number),以方便對產(chǎn)品進行跟蹤和管理或者滿足對芯片進行綁定ID號加密的需要。而為了提高整個批量生產(chǎn)過程的效率,選擇一個好的燒寫工具則至關(guān)重要。對飛思卡爾的Kinetis系列來說,可用的燒寫方案包括P&E官方的Cyclone MAX(支持在線燒寫和脫機燒寫,當然價格較貴)和J-Link(僅支持在線燒寫,需要仿真器+上位機配合)等,本篇就以最近比較火的Freescale M0+ Kinetis L系列為例詳細介紹一下J-Link+J-Flash批量燒寫串號的方案(說到此,不得不感嘆J-Link的強大,高速的下載和調(diào)試,豐富的IDE支持和調(diào)試組件和強有力的調(diào)試功能,再加上……咳咳(大家都懂的),不是土豪人家是金啊,怎一個NB了得):
        開發(fā)平臺:Kinetis L系列KL15Z128
        燒寫工具:J-Link + J-Flash(v4.76f)
        (1) 這里我就不單獨對J-Flash多作介紹了,可以參考我之前的一篇文章《教你用J-Flash ARM工具單獨燒寫程序到Kinetis》,至于包括J-Flash在內(nèi)的軟件包可以直接到SEGGER官網(wǎng)下載http://www.segger.com/jlink-software.html,建議下載最新版的,支持的芯片系列較全,相應(yīng)的組件功能也更強大;
        (2) 打開J-Flash(路徑為Start->All Programs->SEGGER->J-Link ARM V4.76f->J-Flash),在最新版本中會直接彈出選擇已有工程選項卡,根據(jù)需要在路徑"安裝路徑\SEGGER\JLinkARM_V476f\Samples\JFlash\ProjectFiles\Freescale”下選擇自己的目標芯片(我這里選擇MKL15Z128xxx4.jflash,木辦法,手里只有這個),選擇如下圖:
       
        (3) 點擊“start J-Flash”進入工程管理界面,然后點擊File->Open data file,找到需要下載的bin文件或者S19文件,將其加載到j(luò)flash工程里面,加載之后的界面如下圖:
       
        (4) 萬事具備,接下來就開始進行燒寫序列號的設(shè)置。點擊“Options->Project Settings->Production”,選中“Program Serial Number”,設(shè)置如下:
       
        (5) 點擊“OK”,設(shè)置完畢(只設(shè)置一次即可),然后連接目標芯片“Target->Connect”,連接成功,點擊“Auto”,系統(tǒng)會自動將設(shè)置好的序列號添加到s19文件相應(yīng)的地址,然后啟動下載,同時也會在Jflash的工程目錄(之前加載的sample prject的目錄)下生成一個“<JFlashProjectName>_Serial.txt”,內(nèi)容如下圖,其中“12345679”為下次要寫入的數(shù)據(jù),系統(tǒng)自動為其加1了(由“Increment”決定):
       
       
        (6) 我們回讀燒寫到片子中的數(shù)據(jù)(Target->Read Back->Entire chip),然后跳轉(zhuǎn)到“0x2000”地址,可以看到序列號(12345678的十六進制)已經(jīng)寫入,如下圖:
       
        注意事項:
        (1) 在燒寫的時候,必須點擊“Auto”下載,這樣才會生成“<JFlashProjectName>_Serial.txt”文件,且會把序列號自動添加到s19文件然后燒進去,直接點擊“Program”或者“Program&Verify”等燒寫功能只會燒寫原始S19文件,不會添加序列號;
        (2) J-Flash燒寫序列號最多支持4個字節(jié),高于四個字節(jié)的數(shù)據(jù)J-Flash會將前四個字節(jié)取反再燒進去,所以實際上起作用的還是4個字節(jié),不過單純作為序列號的話肯定是足夠了,4個字節(jié)32個比特位,IPv4的地址也就這些吧,呵呵,想不到會有什么產(chǎn)品會超過這個范圍,那樣的話Freescale超越當年的Motorola也不是問題了啊,哈哈;
        (3) 關(guān)于燒寫地址的問題,理論上只要在目標芯片的Code Flash地址范圍內(nèi)并且不與原始運行代碼地址重疊即可,因為J-Flash燒寫的原理是先添加數(shù)據(jù)到原始bin或者S19文件相應(yīng)的位置然后整個文件一塊燒寫進去,所以寫序列號的時候不需要額外的再擦寫扇區(qū)一次也就是不會破壞同在一個扇區(qū)的原始數(shù)據(jù),不過當然如果flash空間足夠大的話不建議將序列號燒寫地址挨著原始代碼太近,建議將序列號寫到Flash的最后,規(guī)避風險;
        (4) 實際上采用J-Flash也可以燒寫多余4個字節(jié)的數(shù)據(jù),不過這需要手動添加編輯txt文件,這里就不多說了,可以參考附件中文檔。
        最近忙的不可開交,抽空終于把這篇文檔完成了,不容易啊不容易,下次再聊,未完待續(xù)~
UM08003_JFlashARM.pdf (559.81 KB, 下載次數(shù): 37)


分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏 分享淘帖 頂 踩
回復

使用道具 舉報

沙發(fā)
ID:95294 發(fā)表于 2015-11-10 16:11 | 只看該作者
不錯,好東西,謝謝分享
回復

使用道具 舉報

板凳
ID:68875 發(fā)表于 2016-8-14 11:15 | 只看該作者
good share
回復

使用道具 舉報

地板
ID:206350 發(fā)表于 2017-10-26 10:08 | 只看該作者
學習~~~~
回復

使用道具 舉報

5#
ID:221675 發(fā)表于 2017-11-12 21:35 | 只看該作者
不錯,學習了。謝謝分享
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術(shù)交流QQ群281945664

Powered by 單片機教程網(wǎng)

快速回復 返回頂部 返回列表