编译问题

[复制链接]
940|2
 楼主| jxmzzr 发表于 2014-4-14 15:01 | 显示全部楼层 |阅读模式
大家好,一个大的常数数组const int table[8000]={0};编译后归到.ebss段吗?CMD文件配置.ebss占ram空间1K,编译的时候报超限(table小于1K时就没事),onst不是放到初始化的.const段中吗?我把.const段配置到RAMH0,1K的空间肯定有了,按照TI文件在CMD中实现了所有初始化段的配置和copysection工作,程序写入flash然后拷进ram运行正常。由于内存不够,现在想把一个大数组放在flash中,其他所有程序和数据段都放在ram中运行。是否需要对table单独建立一个段名,然后CMD把该段分配到flash?主程序中#pragma DATA_SECTION(table, "flashconsts")
const int table[8000]={0};
CMD文件  flashconsts        : > FLASH_AB,        PAGE = 1
不知道对不对?
zhangmangui 发表于 2014-4-14 22:53 | 显示全部楼层
主程序中#pragma DATA_SECTION(table, "flashconsts")
const int table[8000]={0};
CMD文件  flashconsts        : > FLASH_AB,        PAGE = 1
这是对的
tianli1980 发表于 2014-4-15 09:55 | 显示全部楼层
感觉好深奥啊,继续学习!谢谢楼上朋友的指点!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

460

主题

2188

帖子

12

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