- 軟件大小:21.82M
- 軟件語言:英(yīng)文
- 軟件類型:國外軟件
- 軟件類別:免費軟件 / 編程工具
- 更新時(shí)間:2017-06-15 17:19
- 運行環境:WinAll, WinXP, Win7, Win8
- 軟件等級:
- 軟件廠商:
- 官方網站:暫無(wú)
![頂一(yī)個(gè)](/skins/gr/images/c_goodbg.png)
![踩一個](/skins/gr/images/c_badbg.png)
10.35M/中文/10.0
103KB/中文/10.0
2.60M/中(zhōng)文/10.0
2.50M/英文/10.0
78.55M/英(yīng)文/7.5
mplab c18是一款C語言編輯(jí)器,可以對Microchip器件進(jìn)行編輯,簡單高效的(de)編程工具,歡迎大家在綠色資源網免費下載(zǎi)!
mplab c18編譯器不僅保留已有編譯器的所有功能,而且可以(yǐ)隻使用一個係統對所有Microchip器件進行編程。它還可以與MPLAB X IDE和所有Microchip其他開發(fā)工具(jù)配合使用——是Microchip功能最齊全的編(biān)譯(yì)器。
解(jiě)決方法一為:
1、打開18f452.lkr
其關於RAM分配的(de)為
accessBANK NAME=accessram START=0x0 END=0x7F
DATABANK NAME=gpr0 START=0x80 END=0xFF
DATABANK NAME=gpr1 START=0x100 END=0x1FF
DATABANK NAME=gpr2 START=0x200 END=0x2FF
DATABANK NAME=gpr3 START=0x300 END=0x3FF
DATABANK NAME=gpr4 START=0x400 END=0x4FF
DATABANK NAME=gpr5 START=0x500 END=0x5FF
ACCESSBANK NAME=accesssfr START=0xF80 END=0xFFF PROTECTED
SECTIONNAME=CONFIG ROM=config
STACK SIZE=0x100 RAM=gpr5
2、將其(qí)中gpr0範圍(wéi)改為START=0x80 END=0x4FF
如下:
DATABANK NAME=gpr0 START=0x80 END=0x4FF
其餘屏蔽即可。gpr5為堆棧地(dì)址(zhǐ),不作(zuò)休改。
3、重新編譯,OK——
方法二: 自(zì)己創建一個數組區域存放大數組 (可以參考18f452.lkr文件裏(lǐ)麵的分頁(yè)情況)
對於 MPLAB C18 編譯器,數據可以放入數據存儲器或者程序存(cún)儲器。如果沒有用戶
提供的(de)附加代碼,片內程序存(cún)儲器中的數據隻能讀不能寫。如果沒有(yǒu)用戶(hù)提供的附加
代碼(mǎ),片外程序存儲器中的數(shù)據一般是隻能讀或者隻能寫(xiě)。
例如,下麵的語句為靜態分配的未(wèi)初始化數據 (udata)聲明(míng)了一個位於絕對地址
0x120的段(duàn):
#pragma udata my_new_data_section=0x120
rom 關鍵字告知編譯器應該將變量放入程序存(cún)儲器。編譯器會把這(zhè)個變(biàn)量分配到當前
的(de) romdata 型段。例如:
#pragma romdata const_table
const rom char my_const_array[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
/* Resume allocations of romdata into the default section */
#pragma romdata
鏈(liàn)接器強製將 romdata段放入程序存儲區,將 udata和 idata段放入數據存儲區;
然而,數據段也可以位於指定的存儲區。可以使用鏈接器描述(shù)文件中(zhōng)的 SECTION 偽
指令把一個段分配到一個特定的存儲區。
方法三:將(jiāng)數據定義到ROM當中 (ROM不分頁)
請描述您所遇到的錯誤,我們將盡快予以(yǐ)修正,謝謝!
*必填(tián)項,請(qǐng)輸入內容