首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 企业软件 > 行业软件 >

MDK-ARM 疏散加载文件

2013-11-18 
MDK-ARM 分散加载文件? ? Scatter Loading分散加载文件的概念http://www.keil.com/support/man/docs/armli

MDK-ARM 分散加载文件

? ? Scatter Loading分散加载文件的概念http://www.keil.com/support/man/docs/armlink/armlink_Cegbbcjj.htm,也被称作linker script链接脚本文件。? ? ?

? ? Image映像文件组成http://www.keil.com/support/man/docs/armlink/armlink_Bhccdacb.htm

?

? ? ARM映象文件各组成部分在存储系统中的地址有两种:一种是在映象文件位于存储器中时(也就是该映象文件开始运行之前,通俗的说就是下载到Flash中的二进制代码)的地址,称为加载地址;一种是在映象文件运行时(通俗的说就是给板子上电,开始运行Flash中的程序了)的地址,称为运行时地址。赋初值的全局变量和静态变量在程序还没运行的时候,初值是被放在Flash中的,这个时候他们的地址称为加载地址,当程序运行后,这些初值会从Flash中拷贝到RAM中,这时候就是运行时地址了。

?

MDK-ARM 疏散加载文件

?

? ??通过Keil MDK的Build output窗口中Program size项只可查看总的RO,RW,ZI大小,可通过工程名.map文件查看各个文件中各自的RO,RW,ZI大小。

? ? 如果在Output窗口勾选了Debug Information,可以看到生成的axf文件是很大的,但其所含的调试信息是不会在调试的时候被下载到Flash/SRAM中的。参考http://www.embedinfo.com/wen-list.asp?id=344

? ? Keil中Linker选项卡参数--ro_base 表示RO区域的加载和执行地址,--rw_base 表示RW区域的执行地址,勾选Use Memory Layout from Target Dialog,那么加载文件就是从你定义irom和iram等地址得到的,如果不勾选的话就是通过你自己指定的加载文件来加载。

? ?

参考http://blog.csdn.net/wangfoquan/article/details/7647011

热点排行