在线时间0 小时
UID70573
注册时间2008-8-26
NXP金币0
该用户从未签到
新手上路
- 积分
- 27
- 最后登录
- 1970-1-1
|
问题1.想将一个const型数组定位在一个固定的flash地址上,如果我这样做:
const unsigned int myTable[10]@0xC000 = {0,1,2,3,4,5,6,7,8,9}, 编译时出错,说是地址重叠。这样定位常量不可以吗?
如果改成另一种方式:
在prm文件中定义:
SEGMENTS
.....
MYFLASH = READ_ONLY 0x4000 TO 0x4009;
END
PLACEMENT
.....
FLASH_DATA INTO MYFLASH;
END
用户程序中这样定义:
#pragma CODE_SEG MYFLASH
const unsigned int myTable[10]= {0,1,2,3,4,5,6,7,8,9};
#pragma CODE_SEG DEFAULT
请问这样做可不可以,我用full chip simulation 运行时查看0x4000 ~ 0x4009这段地址好像不对?但是用变量把他们读出来却是正确的:如a = myTable[5]结果是正确的。
问题2。如果我要把一个数组放到eeprom中是不是像放在flash中一样可用上面的方法?
请帮帮忙,最好给我一个例程我就更好了!感谢先!
|
|