微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

蓝牙数据通信

如何解决蓝牙数据通信

在蓝牙中,我将发送一个文件,该文件分为 3 个数据包(p1、p2、p3)。每个数据包都有最大的 ATT 有效载荷。

我的问题是,在一个连接间隔内,会有一个主从请求,然后从站会一个一个地发送文件的所有数据包,每两个数据包之间有帧间空间 (IFS) (M -> S,IFPS,S->M(p1),IFPS,S->M(p2),IFPS,S->M(p3))?

或者它就像 (M -> S,IFPS,S->M(p1),M -> S,S->M(p2),S->M(p3),IFPS)?

解决方法

在低功耗蓝牙中,连接中的每个数据包都会被确认。这在蓝牙规范 v5.2,第 1 卷,A 部分,第 3.1.3.2 节(LE 可靠性)中有所提及:

与 BR/EDR 一样,在较差的射频环境中,LE 系统应该 认为本质上是不可靠的。为了解决这个问题,系统 在每一层提供保护级别。 LL 数据包使用一个 24 位循环冗余错误校验 (CRC) 以涵盖以下内容 数据包有效载荷。如果数据包的 CRC 验证失败 有效载荷,数据包没有被接收方确认,数据包 被发送方重新传输。

因此,如果在您提供的两个示例之一之间进行选择,则更准确的是:-

(M -> S,IFPS,S->M(p1),M -> S,S->M(p2),S->M( p3),IFPS)

然而,它并不像这样明确,因为大部分情况发生在基带层的幕后,还有其他事情需要考虑(例如每个连接间隔的数据包数量)。如果您还没有看过它们,请查看以下链接以更好地了解如何在 BLE 中测量吞吐量:-

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。