TI中文支持网
TI专业的中文技术问题搜集分享网站

如何给字符串常量指定flash 地址存储

    IAR 环境   CC2530 如何把指定的字符串常量写到指定的程序地址空间 (通过编译和烧写 bin 文件实现)

我做BootLoader的版本号管理, 用的是IAR 编译环境,想把版本号做为一个字符串常量存到flash 的指定地址中, 我想通过编译设置就能实现 该字符串常量的指定地址分配,烧写bin文件即可。在应用程序中,对指定FLASH 地址读取 来获取BootLoader 的版本号,谢谢

Kevin Qiu1:

试下这种看是否可行 #pragma location =0x08010000 __root __no_init char RELEASEDATA[16];

user3166110:

回复 Kevin Qiu1:

请问如何对该数字付初始值呢

#pragma location =0x1ff0__root __no_init char RELEASEDATE[16] = "V0.1";

我只要给他赋值就会出现下面的提示

Error[Be022]: location address not allowed for initialized variables (writable variables without the __no_init attribute) E:\work\IC_Video\code\zigbee_code\BootLoad_HV3\source\sb_main.c 185

我去掉前面的 __no_init 属性 也是同样提示这个错误

Kevin Qiu1:

回复 user3166110:

用这个要看定义地址是否是可用的,参考这里的做法:www.cnblogs.com/…/10411348.html
用的是Z-Stack的话也可以用​​ osal_nv_write来写

赞(0)
未经允许不得转载:TI中文支持网 » 如何给字符串常量指定flash 地址存储
分享到: 更多 (0)