MDK在SRAM中运行-STM32F103RCT6为例

RCT6的Flash:256KB [start:0x0800 0000 size:40000] SRAM:48KB [start:0x2000 0000 size:c000]

1、在SRAM划分ROM空间,根据自己的程序大小来定:

同时修改Utilities页面:

设置分散加载文件(位于linker页面):

至此如果你的内存分配没有问题,我们已经完成了在RAM运行的第一步,那就是程序已经可以正常下载到RAM中了。要想在RAM中调试,需要配置ini文件.

2、添加调试所必须的ini文件

ini文件的内容,参照安富莱:

FUNC void Setup (void) {

SP = _RDWORD(0x20000000);

PC = _RDWORD(0x20000004);

_WDWORD(0xE000ED08, 0x20000000);

}

LOAD outoutput.axf INCREMENTAL

Setup();

g, main

输出文件地址的设定:

3、中断向量表的配置

至此,操作无误在RAM中调试也没有问题了,需要提示的是ini文件错误检查方法:

在debug状态点开debug选项,打开第二个选项:

 

原文地址:https://www.cnblogs.com/time93/p/9347561.html