在线时间7 小时
UID407707
注册时间2014-9-29
NXP金币0
该用户从未签到
注册会员

- 积分
- 66
- 最后登录
- 2015-5-15
|
我用网上的方法,想将变量Q[5]定义在flash空间地址0xe0000-0xe0004里:
#pragma CONST_SEG SETTING_VALUE
const uchar Q[5]={19,19,19};
#pragma CONST_SEG DEFAULT
并在.rpm文件里作如下定义:
SEGMENTS
Z_RAM = READ_WRITE 0x0060 TO 0x0080;
RAM = READ_WRITE 0x0081 TO 0x015F;
ROM_as_EEPROM = READ_WRITE 0xE000 TO 0xE07F;//flash空间
ROM = READ_ONLY 0xE080 TO 0xFDFF; //flash空间
END
PLACEMENT
DEFAULT_RAM, INTO RAM;
SETTING_VALUE, INTO ROM_as_EEPROM;
DEFAULT_ROM, INTO ROM;
_DATA_ZEROPAGE,
MY_ZEROPAGE INTO Z_RAM;
END
结果编译后,查看memory,发现Q[5]被定义在了0x0000~0x0004空间里.
想请教一下牛人,这是为什么? 我该如何把数据定义在flash空间里?
|
|