对于SO来说可能是一般的,在需要时可以随意移动到任何其他的SO克隆。
我想根据通过蓝牙低功耗发送的消息来回传输所需的时间来计算2个Android智能手机之间的距离。
喜欢:
总行程时间=距离= T1 - T0 - (BT1 - BT0) - (AT1 - AT0)
是否可以在Android上计算(BT1-BT0)和(AT1-AT0)?
谢谢
答案 0 :(得分:1)
没有。时钟误差允许高达50 ppm。此外,允许在4微秒窗口内发送数据包。这些原因足以说明您的提案不起作用。
更大的原因是消息必须由非实时操作系统(Android)中的蓝牙堆栈处理,并且还必须通过UART传输到手机中的蓝牙控制器,然后计划在以下位置传输消息:下一个连接事件。
如果您可以为通用微控制器无线电编程固件并以16 MHz时钟的精度为无线电设定时间,那么您可以获得足够好的结果来测量更长的范围。随着在BT5中引入BLE长距离,控制器现在必须在计算接收器窗口时考虑距离(在BT 4中为+ -2微秒)。