zigbee分包问题
时间:10-02
整理:3721RD
点击:
前提:数据包从终端设备到协调器、当len > afDataReqMTU( &mtu )时,stat = (*apsfSendFragmented)( &req );(猜测是自动分包,然后发送,然后在库里面把分开的数据包组合起来)
问题:
1.当data的长度等于140的时候调用的stat = (*apsfSendFragmented)( &req );接收端串口连接PC打印出来,数据的个数是对的,但是当长度等于400的时候,接收端PC打印出来数据个数就不对没有400个,这个怎么解释呢?
2.分包是协议栈自带的功能还是自己在应用层添加呢?
分包功能称为Fragmentation
可参考协议栈的doc中的Z-Stack Developer's Guide的9.9 了解如何使用。
编译了ZIGBEE_FRAGMENTATION,但是400长度的数据。还是没有发送完
ZigBee分包发送过程中需要用到接收端APS ACK的回复,请问你的接收端同样有使能ZIGBEE_FRAGMENTATION吗?
另外你的源地址和目的地址是一跳吗?还是多跳的。
你有看过空中的报文么?
用了AF_ACK_REQUEST宏,接收端和发送端都编译了ZIGBEE_FRAGMENTATION,终端到协调器点播,一跳。
第一个分包也没有发送出去吗?你看过空中有数据包出来吗?