查看: 2361|回复: 4

Keil下快速修改SDK工程到RAM中运行

[复制链接]
  • TA的每日心情
    开心
    2024-3-26 15:16
  • 签到天数: 266 天

    [LV.8]以坛为家I

    3298

    主题

    6545

    帖子

    0

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    32003
    最后登录
    2024-4-9
    发表于 2020-3-26 09:44:56 | 显示全部楼层 |阅读模式
    Keil下快速修改SDK工程到RAM中运行


    这是一篇短小精悍的小文,预计2分钟内就可以看完并快速掌握。
    很多人都有将SDK工程从Flash搬到RAM中跑的需求,但是不少新手改了半天最后还没有成功,这篇文章给出一种最快速的方法,教你一步一步实现将SDK工程从默认的Flash执行变成RAM执行,并告诉你修改过程中的一些小坑。
    第一步:验证原工
    这一步没啥可说的,在修改之前,一定要确保原工程是OK可跑的。
    另外还要确保原来的固件编译出来的Flash大小,加上原来固件所需要的RAM大小之和要小于芯片的RAM size。否则固件太大,“塞”不到RAM里。
    二步:修改Linker file(链接文
    修改Linker File,把原来的Text区(存放Code和常量)修改到芯片RAM区来。这里以LPC51U68为例:
    1.png
    原来的Linker File长这样:
    2.png
    可以看出,原来的代码和常量存放在TEXT段,TEXT段定义在0x0000_0000 – 0x0004_0000里(Flash)。下面我们把TEXT段直接修改到SRAM0里(当然你也可以修改到SRAMX里)。修改如下:
    3.png
    我们把SRAM0的64K “劈”成2个32K的区域,一半放代码,一半还是像原来一样当数据段用。
    三步:修改IDE配置
    创建jlink_sramx_debug.ini,,并写入以下内容,这些内容在调试器下载到代码到RAM后会被执行,目的是让调试器写SP和PC,并让SP和PC指向代码开始的对应位置(0x2000_0000和0x2000_0004)。
    4.png
    5.png
    第四步:其它配置

    其实第四步算一个小坑,不少同学都坑在这上面了,在RAM里debug必须取消勾选:Update Target before debugging,否则无法Debug。
    6.png
    最后,RAM debug时候,不能再点击Keil左上角的Download功能,因为已经没有代码下载到Flash上了。必须点击Debug(红色圈圈),Debugger会自动把代码Load到RAM并执行。

    另外注意,既然是RAM debug,那么就没办法做复位操作,因为一旦复位,代码就丢失了。

    希望这篇小文对大家有用。




    作者:杨熙        文章出处:恩智浦MCU加油站

    签到签到
    回复

    使用道具 举报

  • TA的每日心情
    慵懒
    2023-12-28 18:15
  • 签到天数: 26 天

    [LV.4]偶尔看看III

    2

    主题

    2270

    帖子

    0

    金牌会员

    Rank: 6Rank: 6

    积分
    2654
    最后登录
    2024-4-1
    发表于 2020-3-26 16:59:59 来自手机 | 显示全部楼层
    璀璨到此一游
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-4-10 22:38
  • 签到天数: 1335 天

    [LV.10]以坛为家III

    88

    主题

    4292

    帖子

    12

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    9049
    最后登录
    2024-4-13
    发表于 2020-3-26 17:36:46 | 显示全部楼层
    这个不错,有机会试试。
    先学习了
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2023-9-6 15:15
  • 签到天数: 211 天

    [LV.7]常住居民III

    34

    主题

    805

    帖子

    0

    版主

    Rank: 7Rank: 7Rank: 7

    积分
    2033
    最后登录
    2024-3-21
    发表于 2020-3-27 11:30:40 | 显示全部楼层
    新功能么还没有发现呢
    该会员没有填写今日想说内容.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    4

    帖子

    0

    新手上路

    Rank: 1

    积分
    23
    最后登录
    2020-11-16
    发表于 2020-11-5 18:02:08 | 显示全部楼层
    请问MCUXpresso 下修改?
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /4 下一条

    Archiver|手机版|小黑屋|恩智浦技术社区

    GMT+8, 2024-4-19 18:37 , Processed in 0.132131 second(s), 24 queries , MemCache On.

    Powered by Discuz! X3.4

    Copyright © 2001-2021, Tencent Cloud.

    快速回复 返回顶部 返回列表