我有一个由 Keil 生成的链接器分散文件,看起来像这样:
LR_IROM1 0x08020000 0x001E0000 {
ER_IROM1 0x08020000 0x001E0000 {
*.o (RESET, +First)
*(InRoot$$Sections)
.ANY (+RO)
.ANY (+XO)
}
RW_IRAM1 0x20020000 0x00060000 {
.ANY (+RW +ZI)
}
RW_IRAM2 0x20000000 0x00020000 {
.ANY (+RW +ZI)
}
}
理想情况下,出于各种原因,我想继续使用 IDE 配置的分散文件。但是,我看不出有任何方法可以让 Keil 添加额外的链接器部分。
天真地,我以为我可以使用以下方法在 RW_IRAM2 区域中放置一个变量:
uint32_t in_ram2 __attribute__((section("RW_IRAM2")));
我也尝试过“.RW_IRAM2”和“.RW_IRAM2.bss”之类的东西,但是变量总是在 IRAM1 区域结束。查看文档后,如果不放弃分散文件,我看不到任何方法可以做到这一点由 Keil 配置/创建。我在这里遗漏了什么吗?