Re: 關於Firmware Update設計
看板ASM (組合語言)作者askacis (222222222222222222)時間16年前 (2008/06/02 23:21)推噓1(1推 0噓 0→)留言1則, 1人參與討論串5/5 (看更多)
※ 引述《ast9869 (甘願為妳~)》之銘言:
: ※ 引述《ast9869 (甘願為妳~)》之銘言:
: : 後來又想到一個不錯的方法,主程式Code不動,
: : 而把我一些常需要Update 的Fucntion Code的位址
: : 定義在主程式Code 後面區塊,應該就可以避掉這樣的問題了。
: 不知道怎麼定義Function的 location?
: 假如我的 xxx.c compiler 之後,我想讓xxx.obj 放在flash的
: 0x12000h的位址,要如何設定啊?
在ARM7底下如果要安排一個function的話可以用KeilC的巨集__at
(記得include absacc.h)若是整個.o,可以設定自己的*.sct去編排
你的記憶體
如果flash size有限無法分作兩大塊來做FW update的話,可以利用
編排.sct的方式將你用來erase/write的函數擺到Ram上進而做到
把整塊chip的flash都清掉還可以更新fw update的功能,但是缺點
就是不能斷電,不然就什麼都沒了XD
還有一個問題就是如果你是用C寫的話,那麼要確保一些C以及ARM
自己本身的library每次編譯出來的.o都在同樣位置上,不然即使
你固定了主code,還是會因為FW V0.1裡面那些library的位置跟你
FW 的V0.2位置是不一樣而當機的,一點小小意見提供給你參考...
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 203.73.218.253
※ 編輯: askacis 來自: 203.73.218.253 (06/02 23:22)
※ 編輯: askacis 來自: 203.73.218.253 (06/03 08:18)
推
08/12 10:07, , 1F
08/12 10:07, 1F
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 5 之 5 篇):
ASM 近期熱門文章
PTT數位生活區 即時熱門文章