|
|||||||||||
| 技術交流 | 電路欣賞 | 工控天地 | 數(shù)字廣電 | 通信技術 | 電源技術 | 測控之家 | EMC技術 | ARM技術 | EDA技術 | PCB技術 | 嵌入式系統(tǒng) 驅動編程 | 集成電路 | 器件替換 | 模擬技術 | 新手園地 | 單 片 機 | DSP技術 | MCU技術 | IC 設計 | IC 產(chǎn)業(yè) | CAN-bus/DeviceNe |
小問題,但值得注意~! |
| 作者:Analog921 欄目:單片機 |
這兩天作一個東東,用的AT89C2051它的RAM是128B,原來我的程序占用了126B的RAM,用仿真器跑起來順暢,毫無問題,但是就是一燒片子,C2051大哥就好想死了一樣,沒有反應,不工作,我以為是硬件出了問題,搞了好半天,一個一個排除,發(fā)現(xiàn)是RAM占的太多了,我把程序修改了一下,把原來申請分配的數(shù)組空間減少,其他的都沒有變,燒片子,上電,一切正常,看來~~~MCU這個東西一般要留出多少空間比較好??? 謝謝~~~~~ |
| 2樓: | >>參與討論 |
| 作者: NE5532 于 2006/11/5 15:37:00 發(fā)布:
看你寫什么語言,C就靠編譯器,匯編就靠你自己,一個都不用留。 |
|
| 3樓: | >>參與討論 |
| 作者: lucidmask 于 2006/11/5 15:46:00 發(fā)布:
re 128個悄敢用掉126,不死才怪 |
|
| 4樓: | >>參與討論 |
| 作者: Analog921 于 2006/11/5 16:30:00 發(fā)布:
我用的C 不曉得C51的編譯器是如何分配內存的的 |
|
| 5樓: | >>參與討論 |
| 作者: lucidmask 于 2006/11/5 16:43:00 發(fā)布:
re 總得為堆棧留點空間吧 |
|
| 6樓: | >>參與討論 |
| 作者: 平常人 于 2006/11/5 17:05:00 發(fā)布:
仿真器有三種類型,全硬件、純軟件和芯片內嵌仿真模塊 估計你用的是純軟件仿真器,這種仿真器需要占用一部分程序和數(shù)據(jù)空間,所以仿真的環(huán)境與實際運行的環(huán)境不完全一樣。 |
|
| 7樓: | >>參與討論 |
| 作者: NE5532 于 2006/11/5 18:01:00 發(fā)布:
這個也就是盡量不要用仿真器的原因之一。 |
|
| 8樓: | >>參與討論 |
| 作者: 平常人 于 2006/11/5 18:13:00 發(fā)布:
全硬件和芯片內嵌仿真模塊的仿真器不占目標機的程序和數(shù)據(jù)空間 |
|
| 9樓: | >>參與討論 |
| 作者: conwh 于 2006/11/5 20:33:00 發(fā)布:
SP的空間夠用了,滿一點沒有什么關系的 |
|
| 10樓: | >>參與討論 |
| 作者: jzlidengbo 于 2006/11/6 10:20:00 發(fā)布:
盡量不要用仿真器,直接用ISP |
|
| 11樓: | >>參與討論 |
| 作者: fushaobing 于 2006/11/6 10:41:00 發(fā)布:
少用仿真器仿真,多用腦仿真 |
|
| 12樓: | >>參與討論 |
| 作者: xzl 于 2006/11/6 12:19:00 發(fā)布:
用匯編就不會這樣了 |
|
|
|
| 免費注冊為維庫電子開發(fā)網(wǎng)會員,參與電子工程師社區(qū)討論,點此進入 |
Copyright © 1998-2006 m.58mhw.cn 浙ICP證030469號 |