denis0750 发表于 2006-10-18 09:15:11

请问大家:在ICC编译时出现这样一句: (182): area 'bss' not large enough???

请问大家:在ICC编译时出现这样一句: <library>(182): area 'bss' not large enough,有哪位朋友知道是什么意思啊?

qingwei_cui 发表于 2006-10-18 09:48:01

程序超过单片机容量了,用ICC的压缩功能优化试一下。

denis0750 发表于 2006-10-18 10:16:01

没超过,只占29%,,现在搞掂了。。。谢谢你回答

cyk8 发表于 2006-10-18 14:45:06

应该是SRAM溢出,SRAM有二种,1.date,2.bss,其中bss表示程序中未初试化过的C全局变量,硬件会自动初试化为零,而date是程序中初试化过的C全局变量.

denis0750 发表于 2006-10-18 14:48:09

如果出现: area 'data' not large enough 应该怎样处理啊??

cyk8 发表于 2006-10-18 15:10:50

很有可能是把表之类的东东放到SRAM里了,应该加const,放到flash里.

denis0750 发表于 2006-10-18 15:19:41

ICC应该怎样写?

denis0750 发表于 2006-10-18 15:52:58

搞掂,谢谢跟贴的朋友

Jack_Air 发表于 2011-3-17 15:31:38

回复【7楼】denis0750
-----------------------------------------------------------------------

很想知道怎么搞定的。。。

57design 发表于 2011-4-10 16:55:09

我遇到这个问题 也搞定了
个人理解为ram不够用了 报的错
没有验证对错

条件:mega16 icc
编到一定程度:隐藏一部分就是74% 不隐藏就报这个错误
分析:不可能是flash不够因为隐藏的代码很短
      但是隐藏的代码里有 U0_Prints("××××××") ;uart_tran('\n');
      其中××××大家是知道的 方便串口直观调试嘛
于是将所有为调试方便的串口发送信息 屏蔽

结论: ok了

扩展:太多了 打字打不过来

kongan 发表于 2011-4-10 20:08:39

回楼主,可以在一些不变的数组前加__flash

175891641 发表于 2011-8-19 16:28:58

iccacr 7.22 中默认const 放进ram的把原先const改成__flash试试

wjc6113218 发表于 2013-2-23 16:24:13

{:handshake:}
页: [1]
查看完整版本: 请问大家:在ICC编译时出现这样一句: (182): area 'bss' not large enough???