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

发送数据开启APS_ACK后,修改超时时间

1、MAC ACK重发机制中,重发次数和超时时间分别是多少,是否可以修改?

2、APS ACK重发机制中,重发次数和超时时间分别是多少,是否可以修改?

Viki Shi:

建议参考这边详解:
bbs.eeworld.com.cn/thread-611126-1-1.html
blog.csdn.net/…/76451653

YiKai Chen:

參考一下 e2echina.ti.com/…/278038 這個帖子

user4711142:

回复 YiKai Chen:

// The maximum number of retries allowed after a transmission failure
uint8 zgApscMaxFrameRetries = APSC_MAX_FRAME_RETRIES;

// The maximum number of seconds (milliseconds) to wait for an
// acknowledgement to a transmitted frame.

// This number is used by polled devices.
uint16 zgApscAckWaitDurationPolled = APSC_ACK_WAIT_DURATION_POLLED;

// This number is used by non-polled devices in the following formula:
//(100 mSec) * (_NIB.MaxDepth * zgApsAckWaitMultiplier)
uint8 zgApsAckWaitMultiplier = 2;

请问这个polled devices 和 non-polled devices分别是什么意思?

YiKai Chen:

回复 user4711142:

polled devices 一般就是end device,non-polled devices一般就是路由設備

user4711142:

回复 YiKai Chen:

是不是将这两个参数改变,就可以延长ACK超时的时间

user4711142:

回复 YiKai Chen:

1、检测APS_ACK ,内部源码肯定又一个等待时间,这段时间内如果检测到APS ACK,就认为应答成功。
2、对于终端设备,当检测到APS_ACK失败后重新发送,增大APSC_ACK_WAIT_DURATION_POLLED,更改的是延迟发送的时间。而不是更改 等待APS_ACK正确的时间。我的理解对么?
3、如果1、2成立,那该如何更改等待APS_ACK正确的时间呢?

YiKai Chen:

回复 user4711142:

你說的"延长ACK超时的时间"是什麼意思?

user4711142:

回复 YiKai Chen:

1、判断APC ACK超时,有没有一个等待时间,等待多少ms后,认为APS_ACK失败。我想问判断APS ACK是否超时的等待时间是否可以更改
2、如下是协调器串口显示接收数据:Type:1ID:1完全一样。证明是协调器已经正确接收到了数据,但是终端没有检测ACK,导致重发了一次。
Type:2ID:3TransID: 212
Type:1ID:1TransID: 206
Type:1ID:1TransID: 206
Type:1ID: 12TransID: 191
这个该怎么办?能否通过延长 1 所说,让终端用更多的时间来判断ACK是否超时;如果不能有没有更好的办法

YiKai Chen:

回复 user4711142:

1. 就是改APSC_ACK_WAIT_DURATION_POLLED
2. 你終端設備的polling rate是多少?

user4711142:

回复 YiKai Chen:

3秒一次

赞(0)
未经允许不得转载:TI中文支持网 » 发送数据开启APS_ACK后,修改超时时间
分享到: 更多 (0)