#1 楼
蓝牙(与雷达等传感器相比,几乎所有其他传输协议)都基于数字协议。这意味着信号既是二进制的,又受错误检测/纠正代码的保护。发送的内容不会改变。特别是在BLE的情况下,数据包中没有纠错开销,只有CRC。任何收到的错误数据包将不被确认。这将导致重新发送数据包(因此,增加等待时间是为了提高典型吞吐量而做出的折衷)。 (从这里开始,按照@ Aurora0001的规定)有时,如果您有很多共享同一频段的传感器,那么更大的功率有时会引起问题。
评论
但是,如果有错误,数据包会被丢弃并重新发送吗?
–彩虹下
17年4月13日在11:19
@Undertherainbow是的。根据此BLE使用停止等待ARQ —“通常,发送方在每个帧的末尾添加一个冗余校验号。接收方使用该冗余校验号检查可能的损坏。如果接收方认为该帧是好的,它会发送一个ACK。如果接收方发现帧已损坏,则接收方将其丢弃并且不发送ACK-假装该帧已完全丢失,而不仅仅是损坏。
–Aurora0001♦
17年4月13日在11:32
@ Aurora0001链接的页面包含非常有用的信息,而我在其他地方找不到。非常感谢。
–彩虹下
17年4月13日在13:25
评论
您能解释问题背后的原因吗?您意识到传输是数字的,并且具有错误检测功能,对吗?@SeanHoulihane因为我不确定数字传输是否可以防止频道读数失真。谢谢,您回答了我的问题!