关于keil的分散加载文件,求大神指教,急急急!!!

2019-07-20 23:55发布

 如何指定    一个运行域在RAM的section    的加载域中ROM的位置。 细节描述:举例说明 第一,首先C文件内定义一个section #pragma arm section code  = “Test” void  funtion (void ) { ....... } 第二,在分散加载文件sct内指定section Test运行域为0x20000400 LR....0x80000000{      .....       ER....0x20000400 {        *.o( Test )        } } 第三,编译后看我们的MAP文件,发现function函数的入口地址在RAM中,即section Test的运行域在RAM,这刚好是我想要的 第四,问题来了:如果我想把程序下载到目标板ROM里面运行,          必须在运行funtion之前,把   function 从他的加载域即ROM里面   拷贝到 运行域RAM里面,否则程序会跑飞( 原因不多说)。           那么我该怎样得到section Test的加载域的地址呢?          更进一步,我该怎样指定section Test的加载域在ROM中存放的位置,然后同时把section Test的运行域指定在RAM运行。         (PS,关于这个问题,已经在IAR上实现,但是在keil上却不知道怎么办) 如果这个问题得到解决,大家可想,当我希望运行某一段程序时,就把它从ROM拷到RAM里,然后再把ROM就可以擦写,也就是更新程序! 希望大神能够帮忙,谢谢!谢谢!!!         
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
8条回答
无苛
1楼-- · 2019-07-21 16:49
 精彩回答 2  元偷偷看……
kds955796
2楼-- · 2019-07-21 19:34
IRLCANDO 发表于 2015-9-12 23:24
回复【3楼】oooiou:
---------------------------------
今天刚好闲着没事隔了一年登上来了,告诉你吧
把加 ...

大神,请问下如何看你的section放在flash哪个地址啊,我看你代码没有这个啊

一周热门 更多>