F28335 如何在软件中把一组数据(如一个数组)定义在flash区?

doinlight ( 楼主 ) 2017-8-28 15:45:14  显示全部楼层
我想在软件中把一组数据,比如一个数组(已经初始化为想要的值),直接定义到一个确定的flash空间里面。我采用的方法如下:
1.在源文件中添加如下:
#pragma DATA_SECTION(CalMapTable,"CalMapTableFile");
static   uint16 CalMapTable[20]=
{
     //这里填充的是自己的固定值,20个元素;
}

2.在cmd文件中修改如下:

在Memorys中修改如下:
   FLASHB_CAlMAPTABLE     : origin = 0x330000, length = 0x001000

在SECTIONS中修改如下:
   CalMapTableFile   : > FLASHB_CAlMAPTABLE ,   PAGE = 1

编译load到目标板之后,发现数组的内容并没有写入到预期的0x330000处,仍全是FFFF填充的。
自己打开生成的map文件,发现CalMapTable的地址的确是被分配到了0x330000处。

请教大牛如何解决呢?多谢了先!
奖励1积分

1个回复

doinlight 发表于 2017-8-28 16:10:35
请大牛解答呀,难道是TI DSP不支持这个功能吗?我以前用其他厂家的比如飞思卡尔、英飞凌等主芯片都是支持这样操作的,在软件里直接把一组数据定义在指定的flash地址上。这样编译下载之后,指定的那块FLASH空间就已经填充了自己编码时设定的值了。 盼望TI技术大牛来帮帮忙
回复

举报 使用道具

您需要登录后才可以回帖 登录 | 注册

本版积分规则


关闭

站长推荐上一条 /9 下一条

小黑屋|手机版|Archiver|电子发烧友 ( 粤ICP备14022951号-2 )

GMT+8, 2018-7-17 15:39 , Processed in 0.201261 second(s), 23 queries , Memcache On.

Powered by 电子发烧友网

© 2015 bbs.elecfans.com

微信扫描
快速回复 返回顶部 返回列表