MDK KEIL sct文件
sct分散加载文件:
- 可以设置源文件中定义的所有变量自动按地址分配到外部SDRAM,这样就不需要在使用关键字
__attribute__按具体地址来指定。
1 | LR_IROM1 0x08000000 0x00080000 { ; 描述加载域 ,定义一个加载时域,域基址:0x08000000,域大小:0x00080000 ,对应实际 Flash 的大小 |
加载域:程序下载flash状态
执行域:程序运行中存储器状态
UNINIT:不需要初始化的控制,格式如下:
1 | RW_IRAM1 0x20000000 UNINIT 0x00024000 { ; RW data 144KB |
分散加载文件的格式
文件包含一个或多个加载区域。每个加载区域可以包含一个或多个执行区域。
图片源地址;[使用的图片源是野火]

加载域
SCT文件的加载与格式如下
1 | ;方括号中的为选填内容 |
输入节区描述
请查看如下PDF
修改SCT文件
.ANY:权限最低
如果要指定文件分配到指定的内存中,使用输入语句,main.o (+RW)
sct:分散加载文件
分散加载文件主要由一个加载时域加多个运行时域组成;同一个文件中可以有多个载时域;
加载时域格式如下所示:
1 | load_region_name base_address max_size |
运行时域格式如下:
1 | exec_region_name base_address max_size |
- load_region_name:为加载时域的名字,长度不超过31个字节
- base_address:为加载时域的起始地址,即从该地址开始加载相关代码
- max_size:为加载时域的最大范围,若实际大小超过该大小,链接器将会报错
- execution_region_description:是对执行时域的描述
- input_section_description:是对执行时域的描述
1 | LR_IROM1 0x08000000 0x00100000 { |
更多资料
分散加载功能
分散文件语法