新聞中心

        EEPW首頁 > 手機(jī)與無線通信 > 設(shè)計(jì)應(yīng)用 > 基于USB總線的MC68HC908JB8 Flash在線編程

        基于USB總線的MC68HC908JB8 Flash在線編程

        作者: 時(shí)間:2011-05-11 來源:網(wǎng)絡(luò) 收藏

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

        本文引用地址:http://www.104case.com/article/156311.htm

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

          1.1 配置

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

          

        JB8的Flash配置

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

          1.2 向量重定位

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

          

        假向量的重定位

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

          

        中斷向量地址和重定位
        上一頁 1 2 3 下一頁

        評論


        相關(guān)推薦

        技術(shù)專區(qū)

        關(guān)閉
        主站蜘蛛池模板: 卫辉市| 多伦县| 新平| 黑龙江省| 论坛| 平江县| 介休市| 凤台县| 灵山县| 鄂伦春自治旗| 伊通| 察隅县| 鲁甸县| 石门县| 安阳市| 太仓市| 凉山| 纳雍县| 麻城市| 新昌县| 墨江| 揭东县| 天长市| 丘北县| 田林县| 包头市| 神农架林区| 乌兰浩特市| 黄大仙区| 玉山县| 岐山县| 黄骅市| 凤阳县| 和平县| 古蔺县| 陆丰市| 永胜县| 大足县| 贵港市| 临沭县| 宁海县|