在Keil中,我们可以在IDE的配置项中设置Flash和RAM的start address以及Length,而在TrueStudion中,IDE没有 提供这样的配置项。那如何实现设置程序的开始地址呢?可以通过修改项目建立时自动生成的stm32_flash.ld文件,在其中修改flash和RAM的起始地址及长度。
/*
******************************************************************************
File: stm32_flash.ld
Info: Generated by Atollic TrueSTUDIO(R) 9.2.0 2018-12-19
Abstract: Linker script for STM32F103CB device
Set heap size, stack size, stack location, memory areas and
sections according to application requirements.
......
*/
/* Specify the memory areas */
MEMORY
{
FLASH (rx) : ORIGIN = 0x08002000, LENGTH = 56K
RAM (xrw) : ORIGIN = 0x20000000, LENGTH = 20K
MEMORY_B1 (rx) : ORIGIN = 0x60000000, LENGTH = 0K
}