Re: 關於Firmware Update設計

看板ASM (組合語言)作者 (此人掛網中……)時間16年前 (2008/05/22 12:28), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串2/5 (看更多)
※ 引述《ast9869 (甘願為妳~)》之銘言: : 目前在8051上寫好了FW(這個MCU是有USB and Flash) : 但日後想要用USB來Update。但不知道要怎麼設計! : 我的想法: : 程式是從到Flash載出來跑的,那更新時不就會寫到 : 正在跑的程式嗎?不就會造成不可遇期的錯誤? : 小弟想了一個方法,不知道可不可行,就是把Main() FlashWrite() FlashErase() : 等一些不常更動到的Function 用 _at_ 的方式定在Flash的最後區塊, : 是不是就不會有這樣的問題呢? : 希望可以得到一些建議。 建議是廠商有支援會比較好,不過有些方法可以試試看 1. flash要夠大,最好是你程式的兩倍大或至少要有一個空間可以放要修改的部份 2. 想法:修改程式進入點,第一次用低的一半,第二次用高的一半,第三次用低的一半 3. 優點:應該不會出現問題 4. 缺點:程式要準備兩套 5. 流程:燒寫沒用到的空白區域,燒寫過程中不能動到 interrupt 的進入位置, 待燒寫完後再關閉 interrup 並燒寫最開頭的 interrup, reset 等進入 位置,最後再將程式reset (jmp 0) 一定有更好的方法……orz -- 我是宅灣人 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 219.87.156.98
文章代碼(AID): #18DFPxU5 (ASM)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文
完整討論串 (本文為第 2 之 5 篇):
文章代碼(AID): #18DFPxU5 (ASM)