//---------------------------------------------------------------------------------------------------
分散加载文件(scatter file):该文件用来指定ARM链接器在生成可执行文件时如何分配RO\RW\ZI等数据的存放地址
分散加载区域分为两部分:加载区;执行区。每个加载区可以创建一个或多个执行区
//---------------------------------------------------------------------------------------------------
一个标准的分散加载文件(KL25):
    LR_IROM1 0x00000000 0x00020000              ; 第一个加载区,名为LR_IROM1,起始地址0x00000000,长度0x00020000    //这个加载区其实就是KL25的flash,128k
    {        
        ER_IROM1 0x00000000 0x00020000          ; 第一个加载区中的第一个执行区,名为ER_IROM1,起始地址0x00000000,长度0x00020000    //第一个执行区其实就是整个flash
        {      
            *.o (RESET, +First)                    ; *.o:匹配所有目标        ; RESET:汇编中定义的段名    ; +First:指定RESET段存放在执行区的起始位置    //这里其实就是程序的入口
            *(InRoot$$Sections)                    
            .ANY (+RO)                            ; .ANY:匹配所有目标文件和库        ; +RO:只读属性        //其实就是把所有的剩余代码和常量存放在这里
        }
        RW_IRAM1 0x1FFFF000 0x00001000          ; 第一个加载区中的第二个执行区,名为RW_IRAM1,起始地址0x1ffff000,长度0x00001000    //第二个执行区其实就是KL25的低地址RAM片,4k,KL25RAM分为2片
        {  
            .ANY (+RW +ZI)                        ; +RW +ZI:所有变量
        }
    }

keil分散加载文件sct写法相关推荐

  1. KEIL MDK链接脚本-分散加载文件sct

    在了解keil的链接脚本之前需要了解几个重要概念: RO(ReadOnly):表示程序中的指令和常量 RW(Read/Write):表示程序中已初始化的变量 ZI(Zero):表示程序中未初始化的变量 ...

  2. keil的sct文件_STM32 分散加载文件 .sct 解析

    1.STM32 启动文件与 .sct 文件分析 1) 定义STACK段,{NOINIT,读写}:分配一段内存大小为0.5K; 2) 定义HEAP段, {NOINIT,读写}:分配一段内存大小为1K; ...

  3. 【C语言常识】Keil MDK的分散加载文件.sct

    https://blog.csdn.net/wuhenyouyuyouyu/article/details/71171546?ops_request_misc=%257B%2522request%25 ...

  4. 【IoT】STM32 分散加载文件 .sct 解析

    1.STM32 启动文件与 .sct 文件分析 1) 定义STACK段,{NOINIT,读写}:分配一段内存大小为0.5K; 2) 定义HEAP段, {NOINIT,读写}:分配一段内存大小为1K; ...

  5. keil的sct文件_Keil sct分散加载文件

    博主是个还没入门的弱菜,老师让查资料所以我把自己找的资料整理一下搁在这里方便以后查阅用的,自己并没有试过. 如有错误,欢迎指正. 参考资料: 首先介绍几个概念: 1.ARM映像文件 ARM映像文件是一 ...

  6. H750移植rt_thread操作系统完整工程分享,包括外部FLASH分散加载文件

    一.移植注意事项 1.在运行外部FLASH存储的代码之前首先要初始化QSPI进入内存映射模式,参考代码: //QSPI进入内存映射模式(执行QSPI代码必备前提,为了减少引入的文件, //除了GPIO ...

  7. app与bootloader共享内存的方法(分散加载文件)

    app要升级时要通知bootloader,然后进入bootloader模式,app要如何通知bootloader呢?以前用了写入升级标志到eeprom的方式,然后bootloader再去读取,这是一种 ...

  8. KEIl工具之scatter file分散加载文件1

    KEIl工具之scatter file分散加载文件 转自:http://blog.csdn.net/zhoujiaxq/article/details/8102587 **************** ...

  9. KEIL的分散加载文件

    KEIL的分散加载文件 使用分散文件指定栈和堆 创建root执行区 使用 FIXED 属性创建根区域 在特定地址放置函数和数据 使用分散加载显式放置命名部分 使用.ANY模块选择器放置未分配的段 使用 ...

最新文章

  1. java在线问答系统_求一个基于JAVA的在线答疑系统程序
  2. 《3D数学基础》系列视频 1.5 向量的夹角
  3. KVM中virtio之vring(八)
  4. 八. 输入输出(IO)操作3.面向字符的输出流
  5. ASP.NET Core Razor 视图组件
  6. 第七十六期:3000台服务器不宕机,微博广告系统全景运维大法
  7. IntelliJ IDEA 中配置、使用 SVN
  8. 华为再获90天“临时许可证” 可继续维护客户
  9. java模块详解_Spring之IOC核心模块详解
  10. AS3的Vector的初始化
  11. Spark算子:RDD行动Action操作(2)–take、top、takeOrdered
  12. mysql compute_compute by 的使用
  13. 如何手动启动消防广播_消防应急广播应如何规范设置?
  14. form 表单提交后,使页面不跳转
  15. 2022华中杯数学建模思路实时更新-ABC思路已更新(A一二程序已更新)-4月30日19时
  16. <img>标签上title属性与alt属性的区别
  17. Java企业级开发框架(一):概述
  18. 「翻译」一个成功的 Git 分支模型
  19. 寻求真心话大冒险之猜数游戏的最佳策略
  20. 前端uni框架学习day_2

热门文章

  1. webuploader 实现图片批量上传功能附实例代码
  2. 新唐 M451系列APROM与LDROM间跳转
  3. http——基础知识
  4. 洛谷 P2336 [SCOI2012]喵星球上的点名 解题报告
  5. [讨论]去掉office正版提醒
  6. java生成图片二维码
  7. 读后感——只是为了好玩(Just for Fun)-Linux之父林纳斯自传
  8. Redis学习记录(一)
  9. 【读书笔记】赞成功利主义的学习
  10. 计算机代码rsi是什么意思,自编RSI指标