[MCU] 如何在IAR for ARM中定义常量或数组到flash而不是RAM中?

[复制链接]
772|11
 楼主| spark周 发表于 2019-6-22 15:30 | 显示全部楼层 |阅读模式
如何在IAR for ARM中定义常量或数组到flash而不是RAM中?
jiajs 发表于 2019-6-22 15:33 | 显示全部楼层

const  就可以啊。
 楼主| spark周 发表于 2019-6-22 15:38 | 显示全部楼层
const,__flash关键字都不行,网上说加一个编译开关,也没有,如何实现想请教,谢谢!
wyjie 发表于 2019-6-22 15:42 | 显示全部楼层

你是要定义一个指向flash 运行的指针还是要存放数据到flash ?
 楼主| spark周 发表于 2019-6-22 15:45 | 显示全部楼层
const不行的,打开仿真器可以看到是静态变量,没有存放数据到flash;但我们需要存放到flash
jiaxw 发表于 2019-6-22 15:48 | 显示全部楼层
const修饰的变量和code放在一起了,可以实现和flash一样的功能,如果要放在内部flash里面要执行flash的读写操作。
zhaoxqi 发表于 2019-6-22 15:52 | 显示全部楼层

IAR开发环境下,在flash下定义数组的方法(本人使用的硬件平台是LPC2368)。
使用关键字const就能实现,但要注意调试方式选择在flash中调试,且在option的debug选项中一定要勾选use flash loader。
zhaoxqi 发表于 2019-6-22 15:56 | 显示全部楼层
如果不勾选将会报错。如果没有把数组定义在flash中,则不勾选use flash loader不会报错,不知为什么。。。有网友说使用关键字_flash能够实现,但是我没有调通,调试提示不识别该关键字
 楼主| spark周 发表于 2019-6-22 15:59 | 显示全部楼层
谢谢,是我地址弄错了,问题已解决!
zhanghqi 发表于 2019-6-22 16:04 | 显示全部楼层
变量运行不是在ram吗
jiahy 发表于 2019-6-22 16:06 | 显示全部楼层

设置volatile这个形式呢?
 楼主| spark周 发表于 2019-6-22 16:09 | 显示全部楼层
结贴了,多谢大家讨论这么多哈,呵呵
您需要登录后才可以回帖 登录 | 注册

本版积分规则

821

主题

10121

帖子

4

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