




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
MSP430加密熔絲燒斷器的制作PAGEPAGE1MSP430加密熔絲燒斷器的制作在過去,如果一個(gè)項(xiàng)目做完后。將交付客戶檢收時(shí)往往需將芯片進(jìn)行加密保護(hù)措施,如果要買一個(gè)專業(yè)的TI編程器帶加密功能的設(shè)備價(jià)格可達(dá)1000-2000RMB左右。如果認(rèn)為太貴的話,大家不防考慮一下采用以簡單的方法為你的芯片。成本也較專業(yè)級的低得多,同時(shí)也可以直接應(yīng)用于產(chǎn)品生產(chǎn)時(shí)之用。以下是為大家編寫的教大家如何制作的MSP430加密熔絲燒斷器的制作主要要點(diǎn),有興趣的朋友不防一起動(dòng)手試試制作。提出MSP430系列單片機(jī)在代碼保護(hù)及加密方面的解決方案;在此方案的基礎(chǔ)上,對MSP430系列單片機(jī)的JTAG結(jié)構(gòu)及加密熔斷的應(yīng)用范圍、原理、條件參數(shù)、操作時(shí)序及具體的方法進(jìn)行闡述;結(jié)合實(shí)際對一款MSP430系列加密熔斷器的功能特征、硬件結(jié)構(gòu)、軟件流程及部分程序進(jìn)行詳細(xì)的說明。引言MSP430系列單片機(jī)是德州儀器(TI)公司推出的一款16位超低功耗單片機(jī)。它能夠在1.8~3.6V電壓、1MHz頻率的條件下運(yùn)行,耗電電流在0.1~400μA。在運(yùn)算速度上,MSP430系列單片機(jī)能在8MHz晶振的驅(qū)動(dòng)下,實(shí)現(xiàn)125ns的指令周期。16位的數(shù)據(jù)寬度、125ns的指令周期以及多功能的硬件乘法器相配合,能實(shí)現(xiàn)數(shù)字信號處理的某些算法(如FFT等)。在整合方面,MSP430系列單片機(jī)將大量的CPU外圍模塊集成在片內(nèi),有如下一些模塊:看門狗(WDT)、模擬比較器、串口、硬件乘法器、液晶驅(qū)動(dòng)器、10位/12位/14位ADC、端口0~6、基本定時(shí)器。其中定時(shí)器A、B均帶有多個(gè)捕獲/比較寄存器,同時(shí)可實(shí)現(xiàn)多路PWM輸出;模擬比較器與定時(shí)器配合,可方便地實(shí)現(xiàn)ADC;液晶驅(qū)動(dòng)多達(dá)160筆段;硬件ADC模塊在小于10μs的速率下實(shí)現(xiàn)10~14位的高速、高精度轉(zhuǎn)換,同時(shí)提供采樣/保持與參考電壓;端口0、1、2能夠接收外部上升沿或下降沿的中斷輸入。MSP430系列單片機(jī)的開發(fā)調(diào)試有多種技術(shù)方案,其中以JTAG和BOOTSTRAP(簡稱“BSL”)方式最為方便。對于Flash型的MSP430單片機(jī)初期開發(fā)進(jìn)行的仿真,只需要1臺PC機(jī)和1個(gè)JTAG控制器即可實(shí)現(xiàn)。進(jìn)入產(chǎn)品級開發(fā)階段,為了保護(hù)用戶代碼,燒斷Flash的保護(hù)熔絲以后就無法再通過JTAG口訪問單片機(jī),這時(shí)用戶對Flash中的程序再進(jìn)行檢查或更新就只能通過BOOT2STRAP進(jìn)行。不用擔(dān)心用戶代碼會泄露,BOOTSTRAP提供了32字節(jié)256位的密碼保護(hù),能完全確保代碼的安全性。
1熔斷加密原理MSP430系列單片機(jī)采用JTAG(實(shí)際上稱為IEEE1149.1或邊界掃描)接口技術(shù),實(shí)現(xiàn)對單片機(jī)全部存儲器的訪問,包括程序Flash、ROM、RAM,并可對其進(jìn)行擦除、讀寫。它能用于程序的下載,監(jiān)測程序使用情況和各個(gè)變量與寄存器的使用情況,并可對其進(jìn)行修改。JTAG接口需要4根信號線、地線和電源線。具體信號線的定義如表1所列。表1JTAG接口信號線引腳方向描述TMS輸入JTAG狀態(tài)機(jī)控制信號線TCK輸入JTAG時(shí)鐘輸入線TDI/TCLK輸入JTAG數(shù)據(jù)輸入線/TCLK輸入TDO輸出JTAG數(shù)據(jù)輸出線JTAG接口為程序的調(diào)試、仿真及監(jiān)控帶來了很大的方便,大大提高了編程效率,縮短了開發(fā)周期;但在程序測試完成轉(zhuǎn)換為產(chǎn)品推向市場時(shí),就必須對程序代碼進(jìn)行加密處理,防止程序代碼的泄漏。JTAG接口的安全性很差,只要符合JTAG標(biāo)準(zhǔn)的控制器就可以將程序代碼讀出,所以必須禁止JTAG功能。對于MSP430系列單片機(jī),禁止JTAG功能的途徑是將單片機(jī)內(nèi)部的加密保險(xiǎn)絲熔斷,熔斷后的單片機(jī)就無法再使用JTAG功能,從而達(dá)到加密程序代碼的目的。具體的JTAG及加密保險(xiǎn)絲結(jié)構(gòu)框圖如圖1所示。MSP430系列單片機(jī)在上電復(fù)位時(shí)會通過TDI/TCLK端對保險(xiǎn)絲進(jìn)行檢測,當(dāng)保險(xiǎn)絲完好時(shí),在TDI/TCLK和地之間會有1mA的電流流過。保險(xiǎn)絲檢測出現(xiàn)在上電復(fù)位以后TMS端的第一個(gè)下降沿上,在第二個(gè)下降沿上會解除保險(xiǎn)絲的檢測,直到下一次的上電復(fù)位再進(jìn)行保險(xiǎn)絲檢測,即在每一次的上電復(fù)位都會對保險(xiǎn)絲進(jìn)行檢測。保險(xiǎn)絲檢測電流只有在保險(xiǎn)絲檢測方式時(shí)才會流過TDI/TCLK端,當(dāng)檢測不到保險(xiǎn)絲電流時(shí),JTAG功能就會失效,且這種加密方式是硬件方式的加密,一旦保險(xiǎn)絲熔斷,JTAG功能就永久失效了,無法再通過JTAG口訪問單片機(jī),從而保證了單片機(jī)內(nèi)代碼的安全。2熔斷加密的時(shí)序及方法MSP430單片機(jī)保險(xiǎn)絲的熔斷必須在特定的條件下進(jìn)行。表2列出了熔斷保險(xiǎn)絲所需的條件及具體參數(shù)。表2保險(xiǎn)絲熔斷條件及參數(shù)保險(xiǎn)絲電參數(shù)minnormax熔斷時(shí)單片機(jī)供電電壓VCC(fb)/V2.53.33.6熔斷時(shí)施加在TDI/TCLK端的電壓Vfb/V66.57熔斷時(shí)施加在TDI/TCLK端的電流Ifb/mA100熔斷時(shí)間tfb/ms1在滿足表2所列的條件下,簡單地將6.5V電壓加在TDI/TCLK端上時(shí),是無法熔斷保險(xiǎn)絲的,必須在一定的時(shí)序及指令下才可以完成。下面是熔斷保險(xiǎn)絲所需的指令及時(shí)序:IR_SHIFT("IR_CNTRL_SIG_16BIT")DR_SHIFT_IN(0x7201);TDO信號切換為TDI功能。TDI信號端釋放,TDO切換為TDIIR_SHIFT("IR_PREPARE_BLOW");通過TDO信號端傳輸MsDelay(1);延時(shí)1ms。等待,連接Vpp至TDI信號端IR_SHIFT("IR_EX_BLOW");通過TDO信號端給目標(biāo)板發(fā)送指令MsDelay(1);延時(shí)1ms,將Vpp從TDI信號端移開;切換TDI 信號端返回TDI功能,同時(shí)復(fù)位JTAG狀態(tài)機(jī)IR_SHIFT("IR_CNTRL_SIG_16BIT")為切換JTAG進(jìn)入16位數(shù)據(jù)接收模式;DR_SHIFT_IN(0x7201)為將TDO信號切換為TDI功能,TDI信號釋放,為接入熔斷電壓Vpp作準(zhǔn)備;IR_SHIFT("IR_PREPARE_BLOW")為設(shè)置MSP430進(jìn)入保險(xiǎn)絲熔斷方式;MsDelay(1)為延時(shí)1ms,同時(shí)連接熔斷電壓Vpp至TDI信號端;IR_SHIFT("IR_BX_BLOW")為執(zhí)行保險(xiǎn)絲熔斷;MeDelay(1)為延時(shí)1ms,同時(shí)斷開TDI端的熔斷電壓Vpp,TDI信號端切換回TDI功能,JATG狀態(tài)機(jī)復(fù)位。保險(xiǎn)絲加密熔斷完成。3熔斷加密器的設(shè)計(jì)與實(shí)現(xiàn)熔斷加密器可以實(shí)現(xiàn)對MSP430Flash單片機(jī)的編程、燒熔絲和BSL下載。可以選擇編程后是否熔斷芯片內(nèi)熔絲,進(jìn)行加密;可自行設(shè)置密碼,徹底保護(hù)芯片內(nèi)容;可進(jìn)行完全擦除編程和保留編程,通過BSL方式讀出目標(biāo)CPU內(nèi)的代碼。熔斷加密器的硬件采用了MSP430F1111A作為系統(tǒng)芯片,實(shí)現(xiàn)對目標(biāo)JTAG口的通信控制、熔斷電壓Vpp的加載與分離、目標(biāo)MSP430單片機(jī)中保險(xiǎn)絲熔斷指令的控制。在電源部分,熔斷電壓Vpp及100mA的熔斷電流是在7806三端穩(wěn)壓芯片與地之間串接二極管IN4001來實(shí)現(xiàn)的;熔斷電壓Vpp的加載與分離通過繼電器的通斷來實(shí)現(xiàn),并使用了3個(gè)LED分別指示目標(biāo)單片機(jī)保險(xiǎn)絲未熔斷、正在熔斷及已熔斷的狀態(tài)。熔斷加密器系統(tǒng)控制部分的電路如圖2所示。軟件部分是通過C語言來實(shí)現(xiàn)熔絲加密器與目標(biāo)單片機(jī)之間的數(shù)據(jù)通信及指令控制的。具體軟件流程如圖3所示。以下為加密熔斷器主程序:復(fù)制代碼#include"MSP430x11x.h"voidmain(void){unsignedchark;WDTCTL=WDTPW+WDTHOLD;P1DIR=0xFE;P1OUT&=~BIT2;//斷開VppP1OUT&=~BIT3;//保險(xiǎn)絲準(zhǔn)備指示燈(黃色)亮P2OUT|=BIT5;//保險(xiǎn)絲熔斷成功指示(綠色)滅P2DIR=0xEF;while(1){if((P1IN&0x01)==0){ResetTAP1();//?delay(50000);IR_SHIFT(0x14);DR_SHIFT16(0xAAAA);if(tdovalue!=0x5555){//保險(xiǎn)絲未熔斷P1OUT|=BIT3;//保險(xiǎn)絲準(zhǔn)備指示燈(黃色)滅IR_SHIFT(0x13);DR_SHIFT16(0x7201);delay(10000);tdopin=1;P2DIR|=BIT4;IR_SHIFT(0x22);P1OUT|=BIT2;//接通Vpp,斷開TDIdelay(50000);IR_SHIFT(0x24);delay(10000);P1OUT&=~BIT2;//斷開Vpptdopin=0;P2DIR&=~BIT4;ResetTAP();delay(50000);IR_SHIFT(0x14);DR_SHIFT16(0xAAAA);if(tdovalue==0x5555){//保險(xiǎn)絲熔斷成功P2OUT&=~BIT5;//保險(xiǎn)絲熔斷成功指示(綠色)for(k=1;k<=3;k++)delay(50000);//綠燈常亮}else{//保險(xiǎn)絲未熔斷黃燈閃爍3次for(k=1;k<=3;k++){P1OUT&=~BIT3;//保險(xiǎn)絲準(zhǔn)備指示燈(黃色)亮delay(50000);P1OUT|=BIT3;//保險(xiǎn)絲準(zhǔn)備指示燈(黃色)滅delay(50000);}}}else{//保險(xiǎn)絲已熔斷for(k=1;k<=3;k++){P1OUT&=~BIT3;//保險(xiǎn)絲準(zhǔn)備指示燈(黃色)亮P2OUT&=~BIT5;//保險(xiǎn)絲熔斷成功指示(綠色)亮delay(50000);P1OUT|=BIT3;//保險(xiǎn)絲準(zhǔn)備指示燈(黃色)滅P2OUT|=BIT5;//保險(xiǎn)絲熔斷成功指示(綠色)滅delay(50000);}}P1OUT
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 初中浮力教學(xué)課件
- 廠房辦公室裝修施工與施工安全管理合同
- 高中插班生入學(xué)協(xié)議及學(xué)業(yè)輔導(dǎo)服務(wù)合同
- 拍賣行委托拍賣合同模板
- 彩鋼房租賃與市場推廣合作項(xiàng)目承包協(xié)議
- 營銷安規(guī)及相關(guān)法規(guī)知識考試試卷
- 秋之韻教學(xué)課件
- 2024-2025學(xué)年山東省日照市高一下學(xué)期期中校際聯(lián)考政治試題及答案
- 2024-2025學(xué)年廣西桂林市部分學(xué)校高一下學(xué)期5月階考生物試題及答案
- 倉儲設(shè)備安全操作規(guī)程考核試卷
- 2025年廣東省佛山市順德區(qū)中考二模物理試題(含答案)
- 研發(fā)項(xiàng)目變更管理制度
- 2024-2025學(xué)年下學(xué)期小學(xué)數(shù)學(xué)人教版三年級期末必刷常考題之復(fù)式統(tǒng)計(jì)表
- 人為因素航空安全管理
- 1、山東省專業(yè)技術(shù)職稱評審表(A3正反面手填)
- 光電子技術(shù)及應(yīng)用(第2版)章節(jié)習(xí)題及自測題參考答案
- 專業(yè)技術(shù)職稱晉升申請書
- 空間數(shù)據(jù)投影
- 2023年莒縣小升初英語考試模擬試題及答案解析
- 金相的基礎(chǔ)知識
- 病原學(xué)檢測陰性肺結(jié)核診斷流程T∕CHATA 008-2020
評論
0/150
提交評論