女人被狂躁到高潮视频免费无遮挡,内射人妻骚骚骚,免费人成小说在线观看网站,九九影院午夜理论片少妇,免费av永久免费网址

當(dāng)前位置:首頁(yè) > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]ICP是一種在實(shí)際的目標(biāo)電路板上燒寫(xiě)和擦除芯片的方法,無(wú)需從目標(biāo)板上將芯片卸下來(lái)再編程實(shí)現(xiàn)用戶程序的修改。這種方法適用于產(chǎn)品開(kāi)發(fā)和代碼升級(jí)。目前市面上很多芯片(如Philips公司的P89C51、P89V51和LPC932A1,STC

ICP是一種在實(shí)際的目標(biāo)電路板上燒寫(xiě)和擦除芯片的方法,無(wú)需從目標(biāo)板上將芯片卸下來(lái)再編程實(shí)現(xiàn)用戶程序的修改。這種方法適用于產(chǎn)品開(kāi)發(fā)和代碼升級(jí)。目前市面上很多芯片(如Philips公司的P89C51、P89V51和LPC932A1,STC89C51和STC89L516RD+,以及AVR公司的ATmega8系列等)都支持串口ICP方式。本文采用USB接口的ICP方法,燒寫(xiě)速度快,無(wú)需專用的電平轉(zhuǎn)換芯片,硬件通過(guò)微處理器JB8的USB接口與計(jì)算機(jī)USB口連接即可。

  1 底層軟件實(shí)現(xiàn)方法

  1.1 Flash配置

  為使用ICP通信連接的USB接口,必須修改JB8中的用戶代碼以識(shí)別預(yù)先為ICP定義的USB命令。因此在出廠前,必須將ICP代碼燒入JB8中。JB8的Flash配置如圖1所示。

  

 

  圖1中,用戶Flash區(qū)范圍為$DC00~$FBFF,用戶Flash向量區(qū)是從$FFFO到$FFFF。ICP的配置中:ICP的代碼是從$F800到 $FBFF。用戶Flash向量區(qū)在ICP操作中是不能再編程的,這兩個(gè)區(qū)是JB8事先寫(xiě)入的,ICP操作可以對(duì)$DCOO~$F7FF的Flash區(qū)(圖1中陰影區(qū))進(jìn)行擦除和燒寫(xiě)。

  1.2 向量重定位

  因?yàn)镮CP的操作只能對(duì)用戶代碼進(jìn)行編程和燒寫(xiě),不能擦除用戶Flash向量,且用戶F1ash向量是固定的,因此在用戶代碼中的中斷服務(wù)子程序地址必須重新定位到合適的地址。這種重新定位是通過(guò)“假”向量來(lái)實(shí)現(xiàn)的,3字節(jié)的假向量包括JMP指令和在用戶代碼中的中斷服務(wù)子程序的絕對(duì)地址。圖2中指出了假向量是如何重定位的。只有復(fù)位向量沒(méi)有重新定位,總是指向$F800(ICP代碼的入口地址)。

  

 

  表1列出了中斷向量地址和重定位“假”向量地址。

  

1.3 安全密鑰防止非法訪問(wèn)

 

  $FFF6~$FFFD的8字節(jié)內(nèi)容用于進(jìn)入JB8的監(jiān)控模式。監(jiān)控軟件能完全訪問(wèn)F1ash區(qū),正常情況下,8字節(jié)的安全密鑰是不可能被猜出的,因?yàn)檫@些中斷服務(wù)程序的起始地址是被固化到用戶代碼區(qū)中的。

  1.4 在ICP期間防止掉電的措施

  配置ICP時(shí)必須考慮到ICP子程序運(yùn)行過(guò)程中有可能掉電,系統(tǒng)必須能夠恢復(fù)和完成ICP程序。ICP_FLAG字的設(shè)計(jì)正是基于此目的。復(fù)位后讀ICP_FLAG字,決定JB8是進(jìn)入正常的工作模式還是ICP模式。該字地址是$F7FE,在用戶代碼區(qū)的最后2個(gè)字節(jié)。復(fù)位之后,復(fù)位向量地址$FFFE~$FFFF指向ICP程序入口地址$F800,一旦初始化完成,檢查進(jìn)入ICP模式或用戶模式的條件。在以下2種情況下JB8進(jìn)入ICP模式:

 ?、?ldquo;假”向量的高字節(jié)$FF7C是無(wú)效的,即不在$DC和$F7之間;

 ?、贗CP_FLAG字不等于校驗(yàn)和。否則,JB8進(jìn)入正常的工作模式。

  1.5 ICP編程

  ICP編程流程圖如圖3所示。

  

 

  一旦用戶代碼被燒入芯片,而“假”向量的高字節(jié)在無(wú)效的范圍($DC~$F7),同時(shí)ICP_FLAG被寫(xiě)入校驗(yàn)和(不能是$0000),則在插撥USB設(shè)備后,ICP代碼跳轉(zhuǎn)到正常操作的用戶模式。

  進(jìn)入JB8 ICP模式有2種方式:ICP_FLAG被寫(xiě)入$0000,或者PTA0被下拉成低電平。用戶代碼包括特別的命令來(lái)編寫(xiě)ICP_FLAG,一旦ICP_FLAG被寫(xiě)入零,則再次插撥上電后,JB8進(jìn)入ICP模式。ICP指令支持有限的USB標(biāo)準(zhǔn)協(xié)議,如讀取描述符和狀態(tài)字,設(shè)置地址和配置字,以及清特征字。

  本文使用了一些必要的擦除、編程、校驗(yàn)Flash命令,如表2所列。

  

 

  在使用讀取狀態(tài)命令后,程序返回1字節(jié)的應(yīng)答命令來(lái)表示Program Row(行編程命令)、Erase Block(塊擦除命令)和Verify Row(行校驗(yàn)命令)命令是否成功。字節(jié)$01表示命令執(zhí)行成功,字節(jié)$04表示命令執(zhí)行失敗。

  1.6 ICP_FLAG的編程

  由于JB8是為HID應(yīng)用設(shè)計(jì)的,最好使用HID命令來(lái)編寫(xiě)ICP_FLAG,這樣可以無(wú)需額外的驅(qū)動(dòng)。本文使用8字節(jié)的Set_Feature指令來(lái)設(shè)置ICP_FLAG,使用8字節(jié)的Get_Ack指令(只有1字節(jié)是有用的)來(lái)校驗(yàn)設(shè)置是否正確(響應(yīng)為$0O表示命令成功,為$01表示命令失敗)。設(shè)置8字節(jié)足出于安全的考慮,如果這8字節(jié)與JB8中$FFE6~$FFED的8字節(jié)相匹配,那么命令才是有效的。只有命令有效,ICP_FLAG才會(huì)被寫(xiě)入0。指令使用格式如表3所列。

  

2 應(yīng)用軟件

 

  USB ICP驅(qū)動(dòng)程序的安裝與普通的硬件驅(qū)動(dòng)程序安裝一樣,需要安裝USB ICP.SYS文件和注冊(cè)表文件USBICP.INF。USB ICP的Windows運(yùn)行界面如圖4所示。

  

 

  選擇燒寫(xiě)文件(.SX格式),擦除Flash(Erase Flash)后執(zhí)行空檢查(Blank Check),然后選擇燒寫(xiě)(Program)芯片,最后執(zhí)行校驗(yàn)(Verify)。

  結(jié)語(yǔ)

  本文采用集成USBl.1協(xié)議的MC68HC908JB8,擴(kuò)展了ICP在串行口的應(yīng)用方式用于開(kāi)發(fā),調(diào)試方便,實(shí)際運(yùn)行效果很好,有一定的應(yīng)用價(jià)值。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點(diǎn),本站亦不保證或承諾內(nèi)容真實(shí)性等。需要轉(zhuǎn)載請(qǐng)聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請(qǐng)及時(shí)聯(lián)系本站刪除。
換一批
延伸閱讀

中國(guó)北京(2025年9月10日)—— 業(yè)界領(lǐng)先的半導(dǎo)體器件供應(yīng)商兆易創(chuàng)新GigaDevice(股票代碼 603986)亮相于深圳國(guó)際會(huì)展中心舉辦的第26屆中國(guó)國(guó)際光電博覽會(huì)(展位號(hào):12C12),全面展示GD25 SPI...

關(guān)鍵字: 光通信 MCU Flash

在嵌入式系統(tǒng)中,F(xiàn)lash存儲(chǔ)器因其非易失性、高密度和低成本特性,成為代碼存儲(chǔ)和關(guān)鍵數(shù)據(jù)保存的核心組件。然而,MCU驅(qū)動(dòng)Flash讀寫(xiě)時(shí),開(kāi)發(fā)者常因?qū)τ布匦岳斫獠蛔慊虿僮髁鞒淌韬觯萑胄阅芟陆?、?shù)據(jù)損壞甚至硬件損壞的陷...

關(guān)鍵字: MCU驅(qū)動(dòng) Flash

深圳2025年4月24日 /美通社/ -- 4月23日,2025上海國(guó)際車(chē)展盛大啟幕,全球汽車(chē)產(chǎn)業(yè)的目光聚焦于這場(chǎng)科技與創(chuàng)新的盛宴。在眾多展示亮點(diǎn)中,汽車(chē)AI+應(yīng)用無(wú)疑是最大的熱點(diǎn)之一,“駕控超級(jí)大腦”技術(shù)概念、車(chē)機(jī)交互...

關(guān)鍵字: GB EMMC Flash PS

在自動(dòng)駕駛、機(jī)器人與工業(yè)檢測(cè)領(lǐng)域,激光雷達(dá)作為環(huán)境感知的核心傳感器,其技術(shù)路線正從機(jī)械式向固態(tài)化演進(jìn)。MEMS、OPA與Flash作為固態(tài)激光雷達(dá)的三大主流架構(gòu),分別通過(guò)微機(jī)電系統(tǒng)、光學(xué)相控陣與泛光面陣技術(shù)實(shí)現(xiàn)掃描與探測(cè)...

關(guān)鍵字: MEMS OPA Flash

在嵌入式系統(tǒng)開(kāi)發(fā)中,外部存儲(chǔ)介質(zhì)的選擇和管理至關(guān)重要。SPI Flash以其高容量、低功耗、高速率等特點(diǎn),成為眾多嵌入式設(shè)備的首選存儲(chǔ)方案。然而,如何高效管理SPI Flash存儲(chǔ),避免數(shù)據(jù)丟失、提高讀寫(xiě)性能,是開(kāi)發(fā)者必...

關(guān)鍵字: 嵌入式SPI Flash LittleFS

STM32單片機(jī)作為一種高性能、低功耗的嵌入式微控制器,廣泛應(yīng)用于各種電子設(shè)備中。在實(shí)際應(yīng)用中,為了擴(kuò)展存儲(chǔ)空間或?qū)崿F(xiàn)數(shù)據(jù)的持久化存儲(chǔ),經(jīng)常需要使用外部FLASH存儲(chǔ)器。本文將詳細(xì)介紹STM32單片機(jī)如何讀寫(xiě)外部FLAS...

關(guān)鍵字: STM32 Flash

在嵌入式系統(tǒng)和存儲(chǔ)設(shè)備領(lǐng)域,F(xiàn)lash和EEPROM(電可擦可編程只讀存儲(chǔ)器)因其非易失性存儲(chǔ)特性而被廣泛應(yīng)用。這些存儲(chǔ)設(shè)備能夠在斷電后保持?jǐn)?shù)據(jù),對(duì)于需要長(zhǎng)期保存配置參數(shù)、程序代碼或用戶數(shù)據(jù)的應(yīng)用來(lái)說(shuō)至關(guān)重要。然而,關(guān)于...

關(guān)鍵字: Flash EEPROM
關(guān)閉