新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于MSP43F149系列單片機(jī)的IAP功能設(shè)計(jì)

基于MSP43F149系列單片機(jī)的IAP功能設(shè)計(jì)

作者: 時(shí)間:2011-12-17 來(lái)源:網(wǎng)絡(luò) 收藏

 圖4中必須注意:

 ?、俦仨毾裙潭ㄔ摮绦虻娜肟诘刂罚@樣引導(dǎo)程序才能將之拷貝到RAM中,大小要控制在2 KB之內(nèi)。該程序比較小,一般不超過(guò)2 KB 。


 ?、诒仨殞lash狀態(tài)鎖住,這樣在寫(xiě)的時(shí)候不容易出錯(cuò)。

 ?、墼谧x取60 KB數(shù)據(jù)后,打開(kāi)看門(mén)狗。升級(jí)系統(tǒng)是根據(jù)看門(mén)狗不喂狗來(lái)自動(dòng)復(fù)位重啟系統(tǒng)的。

  用戶只要根據(jù)上面的流程進(jìn)行編程,就很容易實(shí)現(xiàn)升級(jí)(這里是重點(diǎn),也是一個(gè)難點(diǎn))。引導(dǎo)程序流程如圖5所示。

  圖5說(shuō)明:聲明一個(gè)入口函數(shù),便于外部程序升級(jí)時(shí)調(diào)用。這個(gè)引導(dǎo)程序比較簡(jiǎn)單。由于在片內(nèi)執(zhí)行,所以使用匯編語(yǔ)言(mov指令)很容易就可以把螞蟻搬家程序?qū)氲絉AM中。

  由于IAR編譯出來(lái)的最終文件為*.a(chǎn)43文件,建議使用類(lèi)似(HexToBin.exe)軟件將*.a(chǎn)43文件轉(zhuǎn)化成二進(jìn)制文件,就可直接下載了。

  4 注意事項(xiàng)

  這段代碼必須在RAM里運(yùn)行,所以暫時(shí)不使用SP來(lái)“RET”。也就是說(shuō),不可以使用CALL指令,也不可以使用壓棧處理(如PUSH或者POP等指令),所以這里將不可以開(kāi)設(shè)堆棧區(qū)。通過(guò)某種無(wú)線手段執(zhí)行代碼(BIN文件),然后根據(jù)自定義無(wú)線協(xié)議,將該可執(zhí)行代碼下載并保存到片外的Flash相應(yīng)地址空間,最后啟動(dòng)升級(jí)程序。最后通過(guò)啟動(dòng)看門(mén)狗并復(fù)位來(lái)啟動(dòng)系統(tǒng)。

  結(jié) 語(yǔ)

  通過(guò)長(zhǎng)期的實(shí)踐證明,本方案具有非常高的可靠性。這里雖然只介紹了MSP430產(chǎn)品的升級(jí)方法,但對(duì)于其他沒(méi)有自帶IAP的升級(jí),其思路卻都一樣。這里提醒廣大的開(kāi)發(fā)愛(ài)好者,對(duì)于一串串的二進(jìn)制文件數(shù)據(jù),我們不要害怕;只要獨(dú)立思考,抓住的特性,靈活應(yīng)用,只有想不到,沒(méi)有做不到。祝大家共同進(jìn)步!


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專(zhuān)區(qū)

關(guān)閉