MTK link 错误:“Error: L6221E: Execution region EXTSRAM overlaps with Execution region DUMMY_END.”

 

     错误“Error: L6221E: Execution region EXTSRAM overlaps with Execution region DUMMY_END.”

     今天第一次见到,咋一看,似乎是Sram超了,应该是静态内存区域超了。

 引起原因:

 unsigned char *wf_icon[] = {
  wf_icon_fine_day,/*0*/
  wf_icon_fine_night,/*1*/
  wf_icon_cloudy_day,/*2*/
  wf_icon_cloudy_night,/*3*/
  wf_icon_overcast,/*4*/
  wf_icon_thunder,/*5*/
  wf_icon_rain,/*6*/
  wf_icon_snow,/*7*/
  wf_icon_na/*8*/
 };

此段代码,其中数组中每个成员均是unsigned char 数组。

 

解决方法:

 const unsigned char *wf_icon[] = {
  wf_icon_fine_day,/*0*/
  wf_icon_fine_night,/*1*/
  wf_icon_cloudy_day,/*2*/
  wf_icon_cloudy_night,/*3*/
  wf_icon_overcast,/*4*/
  wf_icon_thunder,/*5*/
  wf_icon_rain,/*6*/
  wf_icon_snow,/*7*/
  wf_icon_na/*8*/
 };

修改成const 的,每个成员均是const unsigned char 数组。

修改后这些数组应该是放在了常量存储区,或者把超出的删除。

 

问题解决,记下!

相关文章“c/c++中内存区域划分大总结”

http://blog.csdn.net/huangtaoyuan/archive/2010/01/07/5153110.aspx

评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值