作者hayden0828 (馬赫迪)
看板ASM
標題[問題] 8051 malloc外部記憶體的問題
時間Sat Apr 4 03:05:04 2009
有一個問題想了一整個晚上="=....
我知道C語言中有malloc,它是在OS層面的函式,因為OS有記憶體規劃的程式才能使用,
如果今天寫的是8051的韌體,
Keil C應該會在Compile的時候就進行記憶體的分配,
那假如我今天有一行程式
pointer = (char xdata *)malloc(len);
代表說我在外部記憶體規劃了一個空間來使用,
問題來了,
keil C有辦法知道我在外部配置了多少的記憶體嗎?
還是能在編譯之前做相關的設定?
另一個問題類似,如果我的8051電路中有一外部RAM(例如62256),
位置是0x0000~0x7FFF,
而0x8000~之後還有其他的Peripheral(如82C55或LCM),
那Keil C在規劃的時候會,規劃到0x8000~後面的位置嗎?
在這裡先謝謝各位版友詳閱我的問題~
--
"妳把一切寫入了扉頁,而我卻解讀不出任何的幸福。"
Sliver,is my belief。
http://mahdi0828.blogspot.com/
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 122.122.145.217
1F:→ ruemann:不行,所以如果真的over時,會發生執行錯誤 04/04 12:30
2F:→ ruemann:當我沒說,我好像弄錯你意思了 04/04 12:31
3F:推 typeotoco:印象中好像要先設定, 弄不好程式編會過, 但是執行會掛 04/04 14:21
4F:推 Aquatics:請詳讀Keil C 的說明書,裡面有寫 04/04 23:42
5F:→ hayden0828:在Options>Target 內能設定...我看到了謝謝..= = 04/05 00:11