你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

如何定义多个变量从指定的位置开始存放

[复制链接]
a707083746 提问时间:2019-8-2 18:30 /
请教大家一个问题
如下面的3个变量这样定义:
u8  V1 __attribute__((at(0x20004000)));
u16 V2 __attribute__((at(0x20004002)));
u32 V3 __attribute__((at(0x20004004)));


在map文件中可以看到分配成功:

    V1                                       0x20004000   Data           1  main.o(.ARM.__AT_0x20004000)
    V2                                       0x20004002   Data           2  main.o(.ARM.__AT_0x20004002)
    V3                                       0x20004004   Data           4  main.o(.ARM.__AT_0x20004004)


上面这种方法需要在每个变量后面都指定一个地址,有没有什么办法可以让某一段或一个C文件的变量从一个指定的位置开始存放呢?


收藏 1 评论3 发布时间:2019-8-2 18:30

举报

3个回答
butterflyspring 回答时间:2019-9-9 16:50:21
看了一下keil的帮助文件,可以将某个文件通过编辑SCATTER文件后指定位置。这样就可以将批量变量的文件统一放置在某个区域。请参考编译器下面的HELP目录 Keil section scatter.PNG
a707083746 回答时间:2019-9-10 08:21:21
butterflyspring 发表于 2019-9-9 16:50
看了一下keil的帮助文件,可以将某个文件通过编辑SCATTER文件后指定位置。这样就可以将批量变量的文件统一 ...

厉害了,应该是这样
glenxu 回答时间:2019-10-14 09:02:07
定义一个数组也可以实现

所属标签

相似问题

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版