是否可以在链接器脚本文件中告诉GCC链接器一个部分应该使用哪个内存



我正在使用基于 GCC(版本 5.3.0)的开发环境。是否可以对链接器说特定部分应根据部分的大小使用内存 1 或内存 2?

为了更好地理解,有一个示例:

MEMORY
{
  ....
  ....
  SRAM (RWX)        : ORIGIN = 0x20000000, LENGTH = 112K
  SRAM2 (RWX)        : ORIGIN = 0x64000000, LENGTH = 2M
}
SECTIONS
{
  ...
  ...
  .bss :
  {
     ... 
     ...
  } > (if size of bss is bigger than SRAM use SRAM2 else SRAM)
}

因为我使用的是 FreeRTOS,所以我找到了这个解决方案:STM32F4在外部RAM中运行FreeRTOS

我正在使用 heap4.c,在这种情况下,可以在专用内存区域中移动完整的堆。由于 heap5.c 在 FreeRTOS 中可用,因此此文件也可以用于我的测试。

最新更新