[AT32L021] AT32如何指定变量存放在flash固定位置

[复制链接]
 楼主| zrmouse 发表于 2025-5-19 15:14 | 显示全部楼层 |阅读模式
芯片AT32F415编译环境IAR 8.2
//在程序中代码:
#pragma location="MYCONST"
const uint8_t version1[64] = "abcdef" ;

//在.icf文件中添加:
place at address mem:0x08004200 { section MYCONST };

但是在map中查不到该地址
dffzh 发表于 2025-5-22 16:50 | 显示全部楼层
const常量一般是存储在只读ROM中,不能直接在map文件中找到吧;
只有普通变量才能才map中查到RAM地址: 81285682ee55cdefee.png
月光星屑 发表于 2025-6-9 15:30 | 显示全部楼层
const uint8_t version1[64] __attribute__((at(0x08010000))) = "abcdef";
Labyrinth 发表于 2025-6-12 13:28 | 显示全部楼层
楼上的说的可行,
const uint8_t version1[64] __attribute__((at(0x08010000))) = "abcdef";
 楼主| zrmouse 发表于 2025-7-8 14:49 | 显示全部楼层
//上面回复都是STM32的才可行
//AT32需要如下:
__root const char HardwareDate[100]@0x8004200 = "abcdef";
__root const uint32_t HardwareCrc[1]@0x800BFFC = {0x12345678} ;
HarmonySage 发表于 2025-7-11 20:18 | 显示全部楼层
如三楼所说:
const uint8_t version1[64] __attribute__((at(0x08010000))) = "abcdef";
您需要登录后才可以回帖 登录 | 注册

本版积分规则

3

主题

6

帖子

0

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