[资料分享与下载] Kinetis的SRAM_L和SRAM_U(IAR实现)

[复制链接]
 楼主| Bermanrep 发表于 2016-1-12 20:19 | 显示全部楼层 |阅读模式
芯片:MK12DX256VLK5,内存 32k,SRAM_L 和 SRAM_U 都是16k
大家都知道,SRAM_L 和 SRAM_U 只能分开使用,即不能定义大于16k的变量,否则编译器会报错,只能小于16k。
但是,定义2个小于16k的也需要做一些处理,以IAR为例:
1、修改ICF文件,关键语句如下:
define symbol __ICFEDIT_region_RAM_start__ = 0x1FFFC410;
define symbol __ICFEDIT_region_RAM_end__   = 0x1FFFFFFF;

define symbol __region_RAM2_start__ = 0x20000000;
define symbol __region_RAM2_end__ = 0x20003FFF;

define region RAM_region   = mem:[from __ICFEDIT_region_RAM_start__   to __ICFEDIT_region_RAM_end__];
define region RAM2_region = mem:[from __region_RAM2_start__ to __region_RAM2_end__];

place in RAM2_region  {section MY_RAM2};


2、程序文件里定义的变量后面,加一个@“MY_RAM2”,(@是iar的关键字,用于变量地址的绝对定位)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

22

主题

132

帖子

2

粉丝
快速回复 在线客服 返回列表 返回顶部