XDT256绝对地址定位问题,恳请版主和各位高人帮忙[求助]
- UID
- 528840
- 性别
- 男
|
XDT256绝对地址定位问题,恳请版主和各位高人帮忙[求助]
请问: 问题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中一样可用上面的方法?
请帮帮忙,最好给我一个例程我就更好了!感谢先!
|
|
|
|
|
|
- UID
- 175096
- 性别
- 男
|
对于问题1就像你说的那样做是可以的,但是要主意PRM内存储空间分配的问题: 对于问题2,EEPROM的操作不能像一种那样,需要按照EEPROM的技术文档来操作 |
|
|
|
|
|