打印

RVDS3.0或ADS1.2下如何将常量保存在FLASH里面?

[复制链接]
1808|3
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
海洋之子|  楼主 | 2007-4-29 16:19 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
以前用8位和16位MCU编程时,编绎器能提供扩展指令或编绎配置令代码中的常量(如:UCHAR code string[]="Hello"; )直接保存在FLASH中访问,而不占用RAM空间. 

请问下在RVDS3.0或ADS1.2中有类似的配置或类似上面"code"的指令实现以上功能吗? 

相关帖子

沙发
wowow| | 2007-4-29 16:57 | 只看该作者

const修饰符

const UCHAR string[]="Hello"; 

使用特权

评论回复
板凳
海洋之子|  楼主 | 2007-4-29 17:17 | 只看该作者

确定吗?

但不同的编绎器对 CONST 的处理不一样. 以前用TASKING编绎器时就发现一个编绎配置用来设定CONST的常量是只放在FLASH里被访问还是在程序启动时从FLASH初始化到RAM里.

所以楼上的兄弟能确定是哪种情况吗? 我是第一次用RVDS3.0

使用特权

评论回复
地板
wowow| | 2007-4-29 17:31 | 只看该作者

可以在scatter文件里注明

现在休假了,手头上没pdf文档
可以这样解决:
1.将需要这样处理的代码放在一起
2.代码前加上#program ??? 不记得哪个编译选项了,你查一下子,用来给这个程序段命名。
3.在scatter文件里给这个段单独分一段,注明地址再加一个FIXED,就不会被__main之类的加载程序加载到ram中去了。

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

2

主题

3

帖子

1

粉丝