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

CC2640R2F: 有没有办法保证一主多从通信中,某一次通信一定成功?

Part Number:CC2640R2F

请问有没有办法保证一主多从通信中,某一次通信一定成功?就是说主机给从机发送命令,一定一次成功。不进行重发。只要有一次就行,不要求每次都是一次性成功。

Alex Zhang:

您好,针对于您描述的问题:只要有一次就行,不要求每次都是一次性成功。

那您可以直接去多次发送就可以了,取消掉重发判断就可以了,主机一直发,不去接受从机接受成功的回传判断条件即可。

,

Alex Zhang:

还有就是对于您这边提到的一次发送一定成功,任何通信都是做不到的,尤其是多个从机以及复杂的通信环境下。

您不想去进行单个数据多次重发的话,就直接去写发送数据过去就可以了,把接受重发回传条件去掉。

也就是主机一直在发,不去管从机是否能收到。

这样就可以做到每次发送的数据都是最新的状态,也就不会影响你数据的实时性,但是这样做可能会丢掉某一次的数据。

,

caiyu:

好的谢谢

,

Alex Zhang:

extern bStatus_t GATT_Notification( uint16 connHandle, attHandleValueNoti_t *pNoti, uint8 authenticated );(不需要主机回应就可以继续发送)

我刚刚为您找到了这个函数,这个函数与GATT——Indication的区别是一个需要主机回应而另一个不需要主机的回应。

,

caiyu:

BLE重传机制是一定能保证从机的数据一定被主机接收吗?

,

Alex Zhang:

您好,对的如果主机收不到数据的话不回去进行回传标志的,这样就会一直发送,直到有应答之后再进行下一步

当然这也取决你的程序如何设计。

这边我给您提供了这个函数,希望可以帮助到您。

Alex Zhang 说:

extern bStatus_t GATT_Notification( uint16 connHandle, attHandleValueNoti_t *pNoti, uint8 authenticated );(不需要主机回应就可以继续发送)

我刚刚为您找到了这个函数,这个函数与GATT——Indication的区别是一个需要主机回应而另一个不需要主机的回应。

赞(0)
未经允许不得转载:TI中文支持网 » CC2640R2F: 有没有办法保证一主多从通信中,某一次通信一定成功?
分享到: 更多 (0)