This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC2530模块升级到zigbee3.0.2协议栈空间不足

Other Parts Discussed in Thread: Z-STACK, CC2530, CC2538

最近在做协议栈的升级,打算先进行协调器的版本升级。

原先的版本:ZHA1.2.2a

目标版本: zigbee3.0.2

使用范例:GenericApp

编译环境如下:

SECURE=1
TC_LINKKEY_JOIN
NV_INIT
NV_RESTORE
ZTOOL_P1
MT_TASK
MT_APP_FUNC
MT_SYS_FUNC
MT_ZDO_FUNC
MT_ZDO_MGMT
MT_UTIL_FUNC
MT_AF_FUNC
MT_APP_CB_FUNC
MT_SYS_CB_FUNC
MT_ZDO_CB_FUNC
MT_AF_CB_FUNC
MT_UTIL_CB_FUNC
MT_ZDO_CB_MGMT
xMT_APP_CNF_FUNC
xLEGACY_LCD_DEBUG
xLCD_SUPPORTED=DEBUG
MULTICAST_ENABLED=FALSE
ZCL_READ
ZCL_WRITE
ZCL_BASIC
ZCL_IDENTIFY
ZCL_SCENES
ZCL_GROUPS

只要打开ZTOOL_P1选项,就会提示内存空降不足。

按照文档《Optimizing CC2530 Z-Stack 3.0.2 Flash and RAM》进行了修改,XDATA_Z不提示错误了,XDATA_I又提示不足了。

Error[e16]: Segment XDATA_I (size: 0x13b align: 0) is too long for segment definition. At least 0x133 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:1ef8-1eff"

协调器程序需要用到MT指令,所以选项ZTOOL_P1必须打开。