【发布时间】:2019-03-21 15:26:33
【问题描述】:
我制作了一个 Android 应用程序,通过蓝牙与 ELM327 OBD-II 加密狗进行通信。 当我使用蓝牙串行终端 (CoolTerm / macOS) 测试应用程序时,应用程序接收和发送数据没有问题。
使用我的应用程序将命令传输到 ELM 会导致答案中断和分裂。
输出:
DataReceivedHandler: 9V
DataReceivedHandler: 9V>
DataReceivedHandler: 11.
DataReceivedHandler: 9V>
上面的示例应该显示AT RV 命令的结果,该命令查询车辆的电池电压(我多次发送该命令)。
预期(良好)结果应如下所示:>11.9V
在我发送第一个查询 OBD 值的命令之前,ELM 由这些 AT 命令初始化:
AT D
AT Z
AT E0
AT L0
AT S0
AT H0
AT SP 0
如果您知道如何从 ELM 获得明确的答案,请告诉我。
提前致谢!
【问题讨论】:
-
似乎一切正常,但您只读取并显示了数据缓冲区的一部分。请添加通信部分的源代码以澄清问题。