IAR中的错误,高手进来下!!!!
Error[e16]:SegmentCODE(size:0x58b4align:0x2)istoolongforsegmentdefinition.Atleast0x1a...
Error[e16]: Segment CODE (size: 0x58b4 align: 0x2) is too long for segment definition. At least 0x1a20 more bytes
needed. The problem occurred while processing the segment placement command
"-Z(CODE)CODE=ROMSTART-ROMEND", where at the moment of placement the available memory ranges were
"CODE:4000016c-40003fff"
Reserved ranges relevant to this placement:
40000040-4000016b ICODE
4000016c-40003fff CODE
是个什么样的错误,应在哪个文件改?我用的是EWARM-EV-WEB-4.41A版本
希望各位高手进来帮帮忙! 展开
needed. The problem occurred while processing the segment placement command
"-Z(CODE)CODE=ROMSTART-ROMEND", where at the moment of placement the available memory ranges were
"CODE:4000016c-40003fff"
Reserved ranges relevant to this placement:
40000040-4000016b ICODE
4000016c-40003fff CODE
是个什么样的错误,应在哪个文件改?我用的是EWARM-EV-WEB-4.41A版本
希望各位高手进来帮帮忙! 展开
2个回答
展开全部
这是说明你的代码量超出了你预设的ROM大小,一般IAR编译程序后会根据一个
xxx.xcl文件把你的代码和数据链接到指定地址,IAR的文件夹里面搜搜就能搜到,"-Z(CODE)CODE=ROMSTART-ROMEND"是说你所有的代码都放置在以ROMSTART为起始地址,ROMEND为终止地址的一段连续的空间内,ROMSTART为0x4000016c,ROMEND为40003fff,貌似是个有16K FLASH的ARM。上面报错是因为你编译出来的CODE size 是0x58b4,已经超过了这个空间,你能做的就是看看能不能缩减代码量。
xxx.xcl文件把你的代码和数据链接到指定地址,IAR的文件夹里面搜搜就能搜到,"-Z(CODE)CODE=ROMSTART-ROMEND"是说你所有的代码都放置在以ROMSTART为起始地址,ROMEND为终止地址的一段连续的空间内,ROMSTART为0x4000016c,ROMEND为40003fff,貌似是个有16K FLASH的ARM。上面报错是因为你编译出来的CODE size 是0x58b4,已经超过了这个空间,你能做的就是看看能不能缩减代码量。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询