TI中文支持网
TI专业的中文技术问题搜集分享网站

ZigBee 3.0 zcl_SendReportCmd使用

3.0协议栈协调器和终端通过zcl_SendReportCmd互发数据

1.发送多字节(例如10字节)的数据的时候pReportCmd->numAttr 是不是就是10?

zclReportCmd_t *pReportCmd;
pReportCmd->numAttr 
pReportCmd->attrList[0].attrID 
pReportCmd->attrList[0].dataType
pReportCmd->attrList[0].attrData 
2.接收端会进入下面的函数是吗?

case ZCL_CMD_REPORT:
zclSampleSw_ProcessInReportCmd( pInMsg );
我在接收函数里怎么提取数据?

static uint8 zclSampleSw_ProcessInReportCmd( zclIncomingMsg_t *pInMsg )
{

}

Alvin Chen:

attr 值是report 几个属性,跟你单个属性上传的数据无关。

可以看一下下面的文章有一定参考意义:

bbs.newbitstudio.com/forum.php

user5367314:

回复 Alvin Chen:

zcl_SendReportCmd一次最大可以发送多少个字节的私有数据?

Alvin Chen:

回复 user5367314:

这个取决你的应用程序可以申请出多少空间,以及考虑IEEE 802.15.4MAC数据包的最大长度为127字节
ZCL REPPROT 参考
SampleTemperatureSensor
SampleThermostat

YiKai Chen:

回复 user5367314:

建議一次发送不要超過60个字节

user5367314:

回复 YiKai Chen:

测试的时候发现终端有掉线和自动重启的现象,抓包如附件,请帮忙看看是什么原因?3.0协议栈开关灯例程

掉线自动重启.psd

user5367314:

回复 Alvin Chen:

协调器通过zcl_SendReportCmd给2630终端发私有数据,
2630终端在应用程序里怎么接收?
协调器发送后会,2630的接收处理函数是?

user5367314:

回复 YiKai Chen:

发送端:
uint8zclSampleSw_IR_CMD[4]={0};zclSampleSw_IR_CMD[0]=1;zclSampleSw_IR_CMD[1]=2;zclSampleSw_IR_CMD[2]=3;zclSampleSw_IR_CMD[3]=4;//发送pReportCmd = osal_mem_alloc( sizeof(zclReportCmd_t) + sizeof(zclReport_t) );if ( pReportCmd != NULL ){pReportCmd->numAttr = 1;pReportCmd->attrList[0].attrID = ATTRID_ON_OFF;pReportCmd->attrList[0].dataType = ZCL_DATATYPE_UINT8;pReportCmd->attrList[0].attrData = (void *)(&zclSampleSw_IR_CMD);zcl_SendReportCmd( SAMPLESW_ENDPOINT, &zclSampleSw_DstAddr,ZCL_CLUSTER_ID_GEN_ON_OFF,pReportCmd, ZCL_FRAME_CLIENT_SERVER_DIR, TRUE, zclSampleSwSeqNum++ );}osal_mem_free( pReportCmd );
接收端uint8 str[4]={0};zclReportCmd_t *pReportCmd;pReportCmd=(zclReportCmd_t *)pInMsg->attrCmd;osal_memcpy(&str,pReportCmd->attrList[0].attrData,4);HalUARTWrite(0,str,4 );
接收端能收到,但是接收的数据不对,
请问哪里代码有误?

YiKai Chen:

回复 user5367314:

pReportCmd->attrList[0].dataType = ZCL_DATATYPE_UINT8;這個不對,至少要設置成ZCL_DATATYPE_UINT32才能送4個bytes

Alvin Chen:

回复 user5367314:

你有认真看过我第一个链接??
要使用ZCL_DATATYPE_CHAR_STR

user5367314:

回复 YiKai Chen:

那我发送50个字节用什么类型?

赞(0)
未经允许不得转载:TI中文支持网 » ZigBee 3.0 zcl_SendReportCmd使用
分享到: 更多 (0)