微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 无线和射频 > TI Zigbee设计交流 > CC2530 无协议栈 使用BANKED模式编写代码遇到了问题

CC2530 无协议栈 使用BANKED模式编写代码遇到了问题

时间:10-02 整理:3721RD 点击:

我使用TI协议栈相关的配置方法,连接文件也使用z_stack中用的f8w2530,编译后,产生了如下报错

Error[e104]: Failed to fit all segments into specified ranges. 
Problem discovered in segment BANKED_CODE. Unable to place 1 
block(s) (0xacff byte(s) total) in 0x3cafb byte(s) of memory. The 
problem occurred while processing the segment placement command 
"-P(CODE)BANKED_CODE=_CODE_START-_CODE_END,0x18000-0x1FFFF,0x28000-
0x2FFFF,0x38000-0x3FFFF,0x48000-0x4FFFF,0x58000-0x5FFFF,0x68000-0x6
FFFF,0x78000-0x7F7FF", where at the moment of placement the 
available memory ranges were 
"CODE:157b-157b,CODE:1a38-7fff,CODE:192ce-1ffff,CODE:28000-2ffff,CO
DE:38000-3ffff,CODE:48000-4ffff,CODE:58000-5ffff,CODE:68000-6ffff,C
ODE:78000-7f7ff"
Error while running Linker

我完全没有使用TI协议栈,请教一下,这种情况想使用BANKed模式应该如何配置

 

 

错误提示是内存不足了

建议您减少冗余数组,优化程序

感谢您的回复!

您指的内存是FLASH还是RAM?减少冗余的数组应该只能减少RAM的空间的使用,我这个报错报告的是BANKED_CODE无法被装入,BANKED_CODE对应的是FLASH区域,所以减少数组和变量是无济于事的.

Error[e104]: Failed to fit all segments into specified ranges. 
Problem discovered in segment BANKED_CODE. Unable to place 1 
block(s) (0xacff byte(s) total) in 0x3cafb byte(s) of memory. The 
problem occurred while processing the segment placement command 
"-P(CODE)BANKED_CODE=_CODE_START-_CODE_END,0x18000-0x1FFFF,0x28000- 
0x2FFFF,0x38000-0x3FFFF,0x48000-0x4FFFF,0x58000-0x5FFFF,0x68000-0x6 
FFFF,0x78000-0x7F7FF", where at the moment of placement the 
available memory ranges were 
"CODE:157b-157b,CODE:1a38-7fff,CODE:192ce-1ffff,CODE:28000-2ffff,CO 
DE:38000-3ffff,CODE:48000-4ffff,CODE:58000-5ffff,CODE:68000-6ffff,C 
ODE:78000-7f7ff" 
Error while running Linker

你看他说的错误都与CODE有关,

现在出现这个报错的原因是我的代码zaiFLASH中超过了32K,也就是说进入了BANK区,但是BANK没有设置好,您有没有有关BANK设置的资料?

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top