|
|||||||||||
| 技術(shù)交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術(shù) | 電源技術(shù) | 測控之家 | EMC技術(shù) | ARM技術(shù) | EDA技術(shù) | PCB技術(shù) | 嵌入式系統(tǒng) 驅(qū)動編程 | 集成電路 | 器件替換 | 模擬技術(shù) | 新手園地 | 單 片 機(jī) | DSP技術(shù) | MCU技術(shù) | IC 設(shè)計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
如何在復(fù)位后是RAM中的數(shù)據(jù)不清0啊? |
| 作者:frange75 欄目:ARM技術(shù) |
| 2樓: | >>參與討論 |
| 作者: hhyhc 于 2005/11/23 14:31:00 發(fā)布:
修改分散加載文件,給ram區(qū)加上UNINIT |
|
| 3樓: | >>參與討論 |
| 作者: frange75 于 2005/11/23 14:49:00 發(fā)布:
謝謝,能否再說的詳細(xì)點呢? |
|
| 4樓: | >>參與討論 |
| 作者: hhyhc 于 2005/11/23 14:58:00 發(fā)布:
我的做法: 1、在分散加載文件中增加 DATA 0x800F0000 UNINIT { data.o(+RW,+ZI) } 2、新建一個data.c的文件 3、在data.c中定義復(fù)位后RAM中不清0的變量 說明:1,我用的lpc2214,有外擴(kuò)ram,沒有外擴(kuò)FLASH 2,0x800F0000為不清0的變量的起始地址,可根據(jù)你的實際情況改變 3,如果你的所有外部RAM均不需清0,則 ERAM 0x80000000 UNINIT ; { * (+RW,+ZI) } * - 本貼最后修改時間:2005-11-23 15:46:47 修改者:hhyhc |
|
| 5樓: | >>參與討論 |
| 作者: frange75 于 2005/11/23 14:59:00 發(fā)布:
謝謝hhyhc,我現(xiàn)在很清楚了!謝謝你的耐心! |
|
| 6樓: | >>參與討論 |
| 作者: frange75 于 2005/11/23 15:16:00 發(fā)布:
請你幫我看看,我的這個加載文件什么地方有問題呢? ROM_LOAD 0x80000000 { ROM_EXEC 0x80000000 { Startup.o (vectors, +First) * (+RO) } RAM_EXE 0x40000000 { flash.o (+RO) } STACKS 0x40004000 UNINIT { stack.o (+ZI) } ERAM 0x81000000 { Startup.o (+RW,+ZI) * (+RW,+ZI) } ; HEAP +0 UNINIT ; { ; heap.o (+ZI) ; } ERAM 0x80000000 UNINIT { * (+RW,+ZI) } } 我想將RAM區(qū)全部不清0 |
|
| 7樓: | >>參與討論 |
| 作者: 馮廣周 于 2006/1/1 16:37:00 發(fā)布:
謝謝你了,我的2119里有這么一段分散加載 NOTE 0x00004000 UNINIT { note.o(+RW,+ZI) } 根據(jù)你上面的意思: 我在我的2119的內(nèi)部FLASH中從0x00004000開始定義我的變量--即NOTE.C中定義的所有變量、數(shù)組等。程序一開始就不會清零我的所有變量了。這樣我數(shù)組里的數(shù)據(jù)就可以一直不變,直到我程序給他清零。 |
|
| 8樓: | >>參與討論 |
| 作者: 馮廣周 于 2006/1/1 17:02:00 發(fā)布:
改后一運(yùn)行就到去數(shù)據(jù)終止里了 |
|
| 9樓: | >>參與討論 |
| 作者: 馮廣周 于 2006/1/1 17:20:00 發(fā)布:
只要一用到我在note.c中定義的就取數(shù)據(jù)終止了 |
|
| 10樓: | >>參與討論 |
| 作者: 馮廣周 于 2006/1/2 21:19:00 發(fā)布:
樓主用的怎么樣呀?我這樣加載不行,急的很啊! |
|
|
|
| 免費(fèi)注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進(jìn)入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |