stm32烧写序列号
類似前段時間我寫的兩篇關于知識產權保護芯片加密的文章,這次再聊一聊產品量產時常需要考慮的另一個問題——燒寫序列號。貌似最近跟“量產”杠上了,呵呵,作為產品生產周期的最后一環,需要考慮的問題很多,不著急,咱以后慢慢聊,哈哈~
? ? 在產品批量生產的時候,很多人會有這樣的需求,即將每個芯片燒寫一個唯一的ID號(Serial Number),以方便對產品進行跟蹤和管理或者滿足對芯片進行綁定ID號加密的需要。而為了提高整個批量生產過程的效率,選擇一個好的燒寫工具則至關重要。對飛思卡爾的Kinetis系列來說,可用的燒寫方案包括P&E官方的Cyclone MAX(支持在線燒寫和脫機燒寫,當然價格較貴)和J-Link(僅支持在線燒寫,需要仿真器+上位機配合)等,本篇就以最近比較火的Freescale M0+ Kinetis L系列為例詳細介紹一下J-Link+J-Flash批量燒寫串號的方案(說到此,不得不感嘆J-Link的強大,高速的下載和調試,豐富的IDE支持和調試組件和強有力的調試功能,再加上……咳咳(大家都懂的),不是土豪人家是金啊,怎一個NB了得):
開發平臺:Kinetis L系列KL15Z128
燒寫工具:J-Link + J-Flash(v4.76f)
(1) 這里我就不單獨對J-Flash多作介紹了,可以參考我之前的一篇文章《教你用J-Flash ARM工具單獨燒寫程序到Kinetis》,至于包括J-Flash在內的軟件包可以直接到SEGGER官網下載http://www.segger.com/jlink-software.html,建議下載最新版的,支持的芯片系列較全,相應的組件功能也更強大;
(2) 打開J-Flash(路徑為Start->All Programs->SEGGER->J-Link ARM V4.76f->J-Flash),在最新版本中會直接彈出選擇已有工程選項卡,根據需要在路徑"安裝路徑\SEGGER\JLinkARM_V476f\Samples\JFlash\ProjectFiles\Freescale”下選擇自己的目標芯片(我這里選擇MKL15Z128xxx4.jflash,木辦法,手里只有這個),選擇如下圖:
(3) 點擊“start J-Flash”進入工程管理界面,然后點擊File->Open data file,找到需要下載的bin文件或者S19文件,將其加載到jflash工程里面,加載之后的界面如下圖:
(4) 萬事具備,接下來就開始進行燒寫序列號的設置。點擊“Options->Project Settings->Production”,選中“Program Serial Number”,設置如下:
(5) 點擊“OK”,設置完畢(只設置一次即可),然后連接目標芯片“Target->Connect”,連接成功,點擊“Auto”,系統會自動將設置好的序列號添加到s19文件相應的地址,然后啟動下載,同時也會在Jflash的工程目錄(之前加載的sample prject的目錄)下生成一個“<JFlashProjectName>_Serial.txt”,內容如下圖,其中“12345679”為下次要寫入的數據,系統自動為其加1了(由“Increment”決定):
(6) 我們回讀燒寫到片子中的數據(Target->Read Back->Entire chip),然后跳轉到“0x2000”地址,可以看到序列號(12345678的十六進制)已經寫入,如下圖:
總結
以上是生活随笔為你收集整理的stm32烧写序列号的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 单片机 架构 程序 经验总结_单片机“死
- 下一篇: 安全:incaseformat蠕虫病毒来