802.15.4的MacPayload最大长度

最近有项目要传输256字节的数据,于是对这个细节进行了深入了解。

 

Z-STACK中有相关代码:

/* Set the MAC MAX Frame Size (802.15.4 default is 102) */

-DMAC_MAX_FRAME_SIZE=116

 

TIMAC中也有:

/* Data constants */

#if !defined ( MAC_MAX_FRAME_SIZE )

  #define MAC_MAX_FRAME_SIZE        116   /* Maximum application data length without security */

#endif

 

那么这个116是怎么来的呢?我们寻根究底去《802.15.4》中去查查看。

技术分享


这里的PSDU就是发往空中的数据,最大长度是127字节。根据MAC帧的帧格式,在最简帧的情况下:启用PAN CMP时,SourcePAN ID可以略去;源地址和目的地址都采用2字节的短地址;关闭加密。在这种最简情况下,MAC帧为2+1+2+2+0+2+0+Payload+2,必要开销是11字节。所以留给Payload的就只有116字节了。

技术分享



至于满足zigbee协议时的APDU长度就大家自己去看看NWK的帧格式了,挺简单的,这里就不说了。


郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。