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

TIMAC 1.5.0中,MAC_MLME_POLL_IND是不是只要收到Data Request命令就能发生?

在早期的的TIMAC中,MAC_MLME_POLL_IND触发条件是:1,FFD设备中,有indrect数据帧。2,收到的data request命令,源地址与indrect的包不一致。

对于TIMAC 1.5.0以前的版本,描述如下

This event is sent to the application only when the MAC is configured for queueing of indirect data in the application by setting macCfg.appPendingQueue to TRUE. If set to FALSE (the default), this event is never sent to the application.
This event is sent to the application when a data request command frame is received from another device. The application should call MAC_McpsDataReq() to send data to that device with TX option MAC_TXOPTION_NO_RETRANS set. If the application has no data for that device it should send zero-length data with TX options MAC_TXOPTION_NO_CNF and MAC_TXOPTION_NO_RETRANS set.

而1.5.0版,描述如下

This event is sent to the application whenever a data Request is received. If the frame was ack'ed with pending, the indirect frame is searched and frame sent to the requester. If no frame is found, a zero length data frame is sent. The MAC_MLME_POLL_IND is sent regardless of acknowledge pending status. The upper layer can use the noRsp flag to determine whether to respond to the poll indication with MAC_McpsDataReq() or not. If noRsp is set to FALSE, the upper layer can respond to the poll indication with MAC_McpsDataReq(). Parameter Details

在Z-stack Home 1.2.0中,新增了Child Age Timeout,据说就是根据子节点的Data Request包来判断节点是否在线。

VV:

是的,就是通过Data request来判断节点是否在线的,但是在父节点端,是一分钟统计一次

赞(0)
未经允许不得转载:TI中文支持网 » TIMAC 1.5.0中,MAC_MLME_POLL_IND是不是只要收到Data Request命令就能发生?
分享到: 更多 (0)