資料介紹
見過很多初學(xué)者對PIC16系列單片機(jī)的ID碼的讀和寫犯迷糊。說實(shí)話,這方面的資料也不怎么全。有些教材可能會涉及ID區(qū)域的介紹,可是往往是一代而過。這對初學(xué)者來說是比較容易犯錯(cuò)的地方。今天有空,對相關(guān)的問題作了一些整理,分享給大家。可能有些地方說的不夠妥當(dāng),歡迎大家多多探討。
1.什么是ID區(qū)域?
ID區(qū)域是獨(dú)立于EEPROM,F(xiàn)LASH,RAM的區(qū)域。程序設(shè)計(jì)人員可以利用該區(qū)域存放軟件的版本號,編寫日期,燒錄日期,產(chǎn)品標(biāo)識等信息。不過該區(qū)域很小PIC16系列只能存放4個(gè)字節(jié)。
2.ID碼怎么燒錄到ID區(qū)域里面去?
可以利用PICC自帶的宏命令I(lǐng)DLOC(X)來實(shí)現(xiàn)。具體操作如下:
.....................................//頭文件 其它宏定義
__IDLOC(76F4); //注意:前面是兩個(gè)下劃線。括號里面最多可以有2個(gè)字節(jié)
void main()
{
...................................//程序主體
}
編譯以后再用燒錄工具燒到單片機(jī)中即可。這里要提醒一下,IDLOC(X)里面最多有2個(gè)字節(jié)的16進(jìn)制數(shù),超過部分會無效。比如你寫個(gè)987FE3,E3會丟掉。另外得說一下這兩個(gè)16進(jìn)制數(shù)在ID區(qū)域是怎么放的。我們已經(jīng)知道IDLOC(X)里面能又個(gè)字節(jié),而ID區(qū)域能放4個(gè)字節(jié)。以X=76F4為例,它們是這樣放的07060F04。也就是說,在每個(gè)16進(jìn)制數(shù)前加1個(gè)0。如果你寫的不是2個(gè)字節(jié)的16進(jìn)制數(shù),比如是1個(gè)字節(jié)的78。編譯器會在前面補(bǔ)0,那就成了0078。寫到ID區(qū)域的就是00000708
3.ID碼怎么讀出來?
可以通過燒錄工具跟編譯器配合讀出來。我用的是PICC跟ICD2。連好線,單片機(jī)上電以后,在編程模式下,通過執(zhí)行Read Target Device操作,然后在Configure菜單下的Id memory
選項(xiàng)可以看到剛才編程的時(shí)候設(shè)置的ID碼。
其實(shí),多數(shù)PIC都沒有唯一ID,有人通過燒斷PIC讀出總線來實(shí)現(xiàn),但設(shè)備需要自制。
只要是市場上大量銷售的芯片,解密都不是什么麻煩事,只能盡量用新型號或者生僻的型號。
有人用MCU內(nèi)部的EEPROM這么搞過,但不是這么簡單的這么搞,對于大批量生產(chǎn)來說,還需要一些技巧才能比較好的處理這個(gè)問題。
1、設(shè)置一個(gè)自檢程序,通過特殊操作(我有一個(gè)自制工裝,可以把MCU的各個(gè)相關(guān)IO強(qiáng)行固定在某個(gè)邏輯電平上,軟件判斷邏輯組合,必須符合一個(gè)特定組合才能進(jìn)入特殊操作啟動代碼,UART接受工裝的通信數(shù)據(jù),通信數(shù)據(jù)傳入EEPROM要被擦寫的次數(shù)和位置等)。
2、進(jìn)入自檢后,MCU瘋狂的擦寫EEPROM中設(shè)定的某個(gè)位置(適當(dāng)提高一點(diǎn)VCC電壓以加快失效),最多擦寫200萬次后停止操作,一般MCU自帶的EEPROM擦寫次數(shù)都不到100萬次,EEPROM某個(gè)字節(jié)在0XAA和0X55之間不斷的被循環(huán)擦寫。
3、這個(gè)擦寫的時(shí)間還是比較長的,一般要數(shù)十分鐘以上,我一般放在產(chǎn)品通電老化階段進(jìn)行這個(gè)自檢程序(產(chǎn)品一般要在老化房4~6個(gè)小時(shí)候通電老化時(shí)間,自檢程序兼容這個(gè)時(shí)間執(zhí)行,避免產(chǎn)生新的工時(shí)損失)
4、擦寫過程中在RAM中記錄EEPROM該字節(jié)失效時(shí)的操作次數(shù),并存入到EEPROM其他字節(jié)中。
5、產(chǎn)品正常銷售中,執(zhí)行APP用戶程序,繼續(xù)不斷的擦寫那個(gè)失效字節(jié),如果不能擦寫,則說明加密成功,否則有另一個(gè)糾錯(cuò)程序就不講了,各位可以自行想辦法。?
(mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- PIC16/18系列開發(fā)入門
- PIC16F87X_CN單片機(jī)資料
- PIC16(L)F1782/1783單片機(jī)手冊 21次下載
- Microwire串行EEPROM和PIC16單片機(jī)的接口設(shè)計(jì) 24次下載
- 使用C語言寫一個(gè)PIC單片機(jī)嵌入式操作系統(tǒng)的資料說明
- 基于PIC16(L)F1713/6高性價(jià)比8位智能模擬閃存單片機(jī)
- PIC12和PIC16單片機(jī)的詳細(xì)介紹和典型應(yīng)用免費(fèi)下載
- AN909中文手冊之SPI串行EEPROM與PIC16單片機(jī)的接口設(shè)計(jì)
- USB閃存單片機(jī)之PIC16(L)F145X詳細(xì)中文手冊免費(fèi)下載.pdf
- PIC16(L)F1512/3之采用XLP技術(shù)的28引腳閃存單片機(jī)
- XLP技術(shù)的全功能低引腳數(shù)單片機(jī)PIC16(L)F183XX系列介紹
- PIC16(L)F170X/171X智能模擬閃存單片機(jī)產(chǎn)品手冊
- pic16位單片機(jī)學(xué)習(xí) 8次下載
- PIC16系列單片機(jī)C程序設(shè)計(jì)與PROTEUS仿真 238次下載
- PIC16CXXX系列單片機(jī)中文資料pdf
- pic單片機(jī)程序設(shè)計(jì)的基本方法解析 1690次閱讀
- PIC單片機(jī)的清零指令詳解 6778次閱讀
- PIC單片機(jī)源程序的模擬仿真設(shè)計(jì) 2558次閱讀
- PIC單片機(jī)低功耗電路的設(shè)計(jì)方法介紹 2230次閱讀
- pic單片機(jī)的八大優(yōu)勢總結(jié) 3316次閱讀
- PIC8位單片機(jī)的特點(diǎn)及優(yōu)勢介紹 4554次閱讀
- PIC單片機(jī)的程序設(shè)計(jì)經(jīng)驗(yàn)分享 2207次閱讀
- 美國微芯科技推出全新的低功率16位PIC24F USB單片機(jī) 3014次閱讀
- 基于MIPS的PIC32MM系列32位單片機(jī)介紹 4695次閱讀
- 什么是單片機(jī)燒寫軟件?如何燒寫 3.4w次閱讀
- PIC16F87x單片機(jī)存儲器特點(diǎn)及數(shù)據(jù)存儲器使用規(guī)劃 4357次閱讀
- microchip單片機(jī)入門基礎(chǔ)知識(PIC單片機(jī)詳細(xì)資料) 2.3w次閱讀
- PIC單片機(jī)簡介 6974次閱讀
- PIC單片機(jī)是什么_PIC單片機(jī)介紹 1w次閱讀
- PIC8位單片機(jī)的基本組成 1951次閱讀
下載排行
本周
- 1GD100PIX120C6SNA規(guī)格書
- 0.98 MB | 3次下載 | 免費(fèi)
- 2一款入耳式耳機(jī)的仿真與分析
- 0.44 MB | 2次下載 | 免費(fèi)
- 3Eurotherm TKS Temperature 用戶手冊
- 1.46 MB | 2次下載 | 免費(fèi)
- 4人形機(jī)器人電機(jī)驅(qū)動和傳感報(bào)告
- 4.27 MB | 2次下載 | 免費(fèi)
- 5無線系統(tǒng)中天線和RF元件電磁建模
- 7.48 MB | 1次下載 | 4 積分
- 6Multisim模擬電路仿真教程
- 1.93 MB | 1次下載 | 3 積分
- 7DMP300C1型微機(jī)變壓器保護(hù)測控裝置技術(shù)說明書
- 4.11 MB | 次下載 | 10 積分
- 8用MT3540芯片設(shè)計(jì)BOOST電路 1(可下載)
- 445.66 KB | 次下載 | 免費(fèi)
本月
- 1晶體三極管的電流放大作用詳細(xì)說明
- 0.77 MB | 32次下載 | 2 積分
- 2Python從入門到精通背記手冊
- 18.77 MB | 27次下載 | 1 積分
- 3雙極型三極管放大電路的三種基本組態(tài)的學(xué)習(xí)課件免費(fèi)下載
- 4.03 MB | 25次下載 | 1 積分
- 4AIWA HS-J303 MKⅡ維修手冊
- 22.47 MB | 23次下載 | 10 積分
- 5多級放大電路的學(xué)習(xí)課件免費(fèi)下載
- 1.81 MB | 21次下載 | 2 積分
- 6九陽豆?jié){機(jī)高清原理圖
- 2.47 MB | 20次下載 | 1 積分
- 7AIWA HS-J202/HS-J202M/HS-J800維修手冊
- 13.60 MB | 15次下載 | 10 積分
- 81875功放原理圖
- 0.04 MB | 11次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935127次下載 | 10 積分
- 2開源硬件-PMP21529.1-4 開關(guān)降壓/升壓雙向直流/直流轉(zhuǎn)換器 PCB layout 設(shè)計(jì)
- 1.48MB | 420063次下載 | 10 積分
- 3Altium DXP2002下載入口
- 未知 | 233089次下載 | 10 積分
- 4電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191382次下載 | 10 積分
- 5十天學(xué)會AVR單片機(jī)與C語言視頻教程 下載
- 158M | 183337次下載 | 10 積分
- 6labview8.5下載
- 未知 | 81585次下載 | 10 積分
- 7Keil工具M(jìn)DK-Arm免費(fèi)下載
- 0.02 MB | 73814次下載 | 10 積分
- 8LabVIEW 8.6下載
- 未知 | 65988次下載 | 10 積分
評論