5509A外扩SDRAM无法使用高地址进行变量分配的问题

[复制链接]
1872|5
 楼主| 以马内利3005 发表于 2014-6-27 14:56 | 显示全部楼层 |阅读模式
SDRAM, IO, TI, AN, se
小弟的5509A外扩了一片SDRAM,其容量为1M*4BANK*16bit,映射在CE0空间,cmd文件里分配的字节地址范围为0x40000~0x400000,对应的字地址范围是0x20000~0x200000,我在程序里声明变量时,用#pragma DATA_SECTION将变量放在了SDRAM里,发现当变量地址超过0x30000时就提示setion spans page boudary:not allowed before CPU revision. 0x20000~0x30000的地址范围刚好是64k,是SDRAM 一个页的容量,怎么解救这个问题呢,就是让我可以使用0x30000以后的空间,谢谢大侠们不吝赐教。
 楼主| 以马内利3005 发表于 2014-6-27 15:17 | 显示全部楼层
本帖最后由 以马内利3005 于 2014-6-28 08:51 编辑

原来cmd文件里所有的地址空间都定义在了PAGE 0 里,我把CE0空间的0x80000~0x400000定义在PAGE 1 里,就OK了。
vivilzb1985 发表于 2014-6-27 22:01 | 显示全部楼层
我不是很清楚这一块的,晚上来帮着顶起以下的吧
 楼主| 以马内利3005 发表于 2014-6-28 08:50 | 显示全部楼层
vivilzb1985 发表于 2014-6-27 22:01
我不是很清楚这一块的,晚上来帮着顶起以下的吧

我已经解决了,请看2楼,谢谢帮顶~
zhangmangui 发表于 2014-6-28 23:26 | 显示全部楼层
以马内利3005 发表于 2014-6-27 15:17
原来cmd文件里所有的地址空间都定义在了PAGE 0 里,我把CE0空间的0x80000~0x400000定义在PAGE 1 里,就OK了 ...

为啥啊    PAGE0的范围不够?
 楼主| 以马内利3005 发表于 2014-6-30 08:44 来自手机 | 显示全部楼层
zhangmangui 发表于 2014-6-28 23:26
为啥啊    PAGE0的范围不够?

好像是的,每一个page的范围好像限定了大小,64k左右吧~地址length=0x10000字~
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:十字架十字架,永是我的荣耀。

18

主题

271

帖子

14

粉丝
快速回复 在线客服 返回列表 返回顶部