CC2540 XDATA_I容量不够怎么处理
大家好!现在移植TI的1.4.2.2蓝牙协议栈,出现如下错误:
Error[e16]: Segment XDATA_I (size: 0x471 align: 0) is too long for segment definition. At least 0x135 more bytes needed.
The problem occurred while processing the segment placement command "-Z(XDATA)XDATA_Z,XDATA_I=_XDATA_START-_XDATA_END",
where at the moment of placement the available memory ranges were "XDATA:1bc4-1eff"
Reserved ranges relevant to this placement:
XDATA:1-280 XSTACK
XDATA:281-1eff XDATA_Z
BIT:0-7 BREG
BIT:80-97 SFR_AN
BIT:a0-af SFR_AN
BIT:b8-c7 SFR_AN
BIT:e8-ef SFR_AN
BIT:f8-ff SFR_AN
Error while running Linker
Total number of errors: 1
Total number of warnings: 0
请问是由于CC2540容量不够导致的吗?通过XCL文件可以解决这个问题吗?或者说不换芯片怎么可以优化下代码?谢谢!
1.4.2.2适用于CC254X系列的,请问你是用的哪个例程?
谢谢你的回复,问题已经解决,我用的是CC2540,编译器的堆栈定义为3K,改小就可以了:
INT_HEAP_LEN=3072;改为 INT_HEAP_LEN=1024;
Best regards!
Tom_luo