【问题标题】:Proper way for recieving bluetooth transfer in android (stop bit)在android中接收蓝牙传输的正确方法(停止位)
【发布时间】:2011-11-03 06:53:55
【问题描述】:

我正在尝试通过蓝牙从传感器获取一些数据。传感器正在向我发送 8 位包。问题是数据的长度不同(几次 8 位),所以我无法确定数据的结尾。

现在我将字符串附加在一起并检查回车,但问题是这是特定于我的传感器(在字符串末尾我有回车)。

一次测量的传感器数据是这样的:

547.8  5.688  22.40  .0000 .0000  .0000 \r\n
547.8  855.688  22.40  .0000 .0000  .0000 \r\n

我每秒都会向安卓设备发送这个传感器数据。 Android 设备正在获取 8 位块,但我无法检测到停止位。

现在我获得了一个输入的全部数据,有没有办法检测停止位或其他东西?

我正在接收蓝牙传输,就像在 android 蓝牙聊天示例中一样。

谢谢你, 托尼

【问题讨论】:

    标签: android bluetooth data-transfer


    【解决方案1】:

    在数据中总是需要一种方法来找到每个块的结尾,并且一直读取直到找到那个点。通常这是一个完整的行(以换行符结尾),或者它可能是前一个或两个字节(或字符)中的计数值。不能依赖一次读取或类似的数据。

    请注意,“停止位”是在物理串行电缆上使用的东西,位于 每个 字节之后,所以在这里对您没有用处。

    【讨论】:

    • 感谢您的解释。
    猜你喜欢
    • 2014-08-13
    • 2011-04-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-01-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多