<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>

新聞中心

EEPW首頁(yè) > 嵌入式系統 > 設計應用 > 利用Flash實(shí)現單片機系統的在線(xiàn)維護

利用Flash實(shí)現單片機系統的在線(xiàn)維護

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

由于SST29EE010是以128字節的頁(yè)方式寫(xiě)入,所以實(shí)現加載指令時(shí),對SST29EE010的寫(xiě)操作以128字節為分組,不足128字節的分組填充至128字節再處理。在加載程序時(shí),主機將加載程序.BIN文件以128字節為單位分組,并為每個(gè)分組加上升級指令代碼和位置參數后通過(guò)串口發(fā)送給MCU,MCU接收數據后進(jìn)行判斷,若是加載指令則將接收的數據寫(xiě)入到參數指定的FLASH區,并返回操作代碼;處理流程如圖4所示。

圖4 程序加載的處理流程圖

5 注意事項

在系統設計與程序設計過(guò)程中需要注意以下幾點(diǎn):

(1)對FLASH芯片進(jìn)行讀/寫(xiě)操作時(shí),將其當作擴展的外部存儲器(用MOVX @DPTR,A指令);執行程序時(shí),將其作為擴展的程序存儲器。

(2)在寫(xiě)數據之前要打開(kāi)SST29EE010的保護鎖,寫(xiě)操作完成后要將SST29EE010的保護鎖關(guān)閉,關(guān)鎖之前要有一定的延時(shí)(通過(guò)需要10ms)。

(3)為了保證整個(gè)系統的可用行,需要對加載程序進(jìn)行可用行檢測機制,最簡(jiǎn)單的方法就是為所要加載的.BIN文件增加3字節的內容,在文件前面增加2字節的.BIN文件長(cháng)度指示,并在加載程序之后增加1字節的程序校驗值(如異或值),寫(xiě)入FLASH中的內容如圖5所示。

圖5加載程序的格式與內容

(4)為了進(jìn)一步提高系統的安全性,需要進(jìn)行相關(guān)的身份認證獲取加載的權限如口令驗證,否則不予開(kāi)放加載功能。

(5)還應該添加一些版本控制和校驗功能,進(jìn)行版本控制,只有在與待加載的程序具有相同的版本時(shí)才能進(jìn)行程序加載。

(6)因為加載的程序起始地址從8000H開(kāi)始,又有2字節的長(cháng)度指示,所以在加載程序之前增加“ORG 8002H”偽指令。

6 結束語(yǔ)

以單片機為基礎的需求越來(lái)越多,也就帶來(lái)了更多的維護問(wèn)題。通過(guò)上層應用程序維護通常比直接進(jìn)行單片機底層程序的維護要方便得多!本文基于實(shí)現的思想,介紹了一種通過(guò)PC機串行接口維護的方法,從而為版本管理、程序的動(dòng)態(tài)維護以及程序存儲器的擴展都提供了十分便利的手段。

參考資料

[1] 張友德,趙志英,涂時(shí)亮.單片微型機原理、應用與實(shí)驗.上海:復旦大學(xué)出版社,2000

[2] 李朝青.PC機及單片機數據通信技術(shù),北京:北京航空航天大學(xué)出版社,2001

[3] 余永權.ATMEL89系列單片機應用技術(shù),北京:北京航空航天大學(xué)出版社,2002


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

評論


相關(guān)推薦

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

關(guān)閉
国产精品自在自线亚洲|国产精品无圣光一区二区|国产日产欧洲无码视频|久久久一本精品99久久K精品66|欧美人与动牲交片免费播放
<dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><small id="yhprb"></small><dfn id="yhprb"></dfn><small id="yhprb"><delect id="yhprb"></delect></small><small id="yhprb"></small><small id="yhprb"></small> <delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"></dfn><dfn id="yhprb"></dfn><s id="yhprb"><noframes id="yhprb"><small id="yhprb"><dfn id="yhprb"></dfn></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><small id="yhprb"></small><dfn id="yhprb"><delect id="yhprb"></delect></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn> <small id="yhprb"></small><delect id="yhprb"><strike id="yhprb"></strike></delect><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn><dfn id="yhprb"><s id="yhprb"><strike id="yhprb"></strike></s></dfn><dfn id="yhprb"><s id="yhprb"></s></dfn>