程序在SDRAM中运行,SCT文件如何配置?

2019-03-25 20:04发布

我想让一个独立的可执行程序放在SRAM运行,我采取的方式如下:
1.先写一个简单的复制拷贝程序,运行在片内FLASH.负责拷贝新的应用程序到外部SDRAM,然后跳转到SDRAM执行。


现在有如下问题:
1.可执行程序如果独立运行在SDRAM,它对应的sct分散加载文件应该如何编写?编译环境采用的是MDK KEIL
2.如果应用程序可能需要大量的SDRAM内存区域,SDRAM的整个区域如何划分,怎样在SCT文件中体现。


此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
zyzs50
2019-03-26 02:32
本帖最后由 zyzs50 于 2016-7-22 11:53 编辑
zhaojun_xf 发表于 2016-7-22 10:10
很少用分散加载文件,可以找一下,周工的例程看看,有说到分散加载文件。

我是用的lpc1788,片内FALSH只有512KB,我的可执行文件已经超过了512KB,片内放不下,所以想放到片外SDRAM运行。因此在编写sct文件时出了问题,如果直接把运行地址改为0xA0000000.跳转的时候没有运行。所以感觉SCT文件写的有问题
我的sct文件这样写:

LR_IROM1 0xA0000000 0x00080000  {    ; load region size_region
  ER_IROM1 0xA0000000 0x00080000  {  ; load address = execution address
   *.o (RESET, +First)
   *(InRoot$$Sections)
   .ANY (+RO)

  }
  RW_IRAM1 0x10000000 0x00010000  {  ; RW data
   .ANY (+RW +ZI)
  }
  RW_RAM1 0xA0080000 UNINIT 0x02000000  {  ; RW data
   * (VRAM, GUI_RAM, GUIDEMO_STACK, FS_RAM, IP_RAM, USB_RAM)
  }
}


一周热门 更多>