[求助] LM3S9B96如何让程序不烧写进Flash,直接下载到SRAM内运行?

ultrabenz   2012-5-25 09:42 楼主

我在网上看到了一些方法,但是不知道有没有实际做成功的同志?能否提供一些实际的经验或有用的资料?谢谢各位了!

马上要做前期开发的工作,不想总往Flash里烧写,以免出现各种问题,包括损坏或者被锁什么的。

补充一下,目前手头有一个J-Link和IAR的软件,我看很多都是KEIL下的方法?IAR下面能搞定吗?现在主要是在做方案,怕后期出现一些问题,所以提前考虑一下。

[ 本帖最后由 ultrabenz 于 2012-5-25 10:40 编辑 ]

回复评论 (9)

回复 楼主 ultrabenz 的帖子

试过一个在 MDK 中的比较简单的方法.
一是修改 *.sct 文件。
二是要有一个 *.ini 文件。
点赞  2012-5-25 10:22

回复 沙发 Study_Stellaris 的帖子

在IAR下面能用这两种办法吗?
点赞  2012-5-25 10:42

回复 板凳 ultrabenz 的帖子

IAR 下也可以,不过要修改的是 icf 文件



define memory mem with size = 4G;
define region FLASH = mem:[from 0x00000000 to 0x0003ffff];
define region SRAM = mem:[from 0x20000000 to 0x2000ffff];
define block HEAP with alignment = 8, size = 0x00000000 { };
initialize by copy { readwrite };
do not initialize { section .noinit };
place at address mem:0x20000000 { readonly section .intvec};
place in mem:[from 0x20000000 to 0x20008000] {readonly};
place in mem:[from 0x20008001 to 0x2000ffff]  { readwrite, block HEAP };
点赞  2012-5-25 12:46

回复 4楼 Study_Stellaris 的帖子

那其它的参数不用修改了么?比如中断向量,或者一些库文件的装载时的地址什么的?
点赞  2012-5-25 13:06

回复 5楼 ultrabenz 的帖子

中断向量的位置指定要修改到 0x20000000
点赞  2012-5-25 14:01
引用: 原帖由 Study_Stellaris 于 2012-5-25 14:01 发表 中断向量的位置指定要修改到 0x20000000
学习了!
学习靠的就是努力,靠的就是坚持……
点赞  2012-5-25 22:16
在三星的板子上试过!使用uboot,可以上网下一个参考一下!如果找不到给我要!
点赞  2012-5-25 22:27
很热心的网友
点赞  2012-5-27 09:40

回复 8楼 wuyanyanke 的帖子

您说的是片外的SDRAM吧?我这个是打算直接下载到片子里的SRAM里运行,因为程序可能就30K左右吧,没多大,不是一个像linux或者CE似的操作系统镜像。
点赞  2012-5-28 16:33
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 京公网安备 11010802033920号
    写回复