12

我正在尝试将命令从 ANDROID 发送到 ELM327/OBD2 协议(WIFI 诊断故障)。我从以下网址下载了一个 api 或库:https ://github.com/pires/android-obd-reader 这个 api 没有任何文档的问题。我们需要有关交换数据的命令和协议的帮助。谢谢!

4

2 回答 2

16

你真正想知道什么?

使用 ELM327,协议相当简单。您只需以 ASCII 格式发送 PID,您将收到 ASCII 格式的答复。它基于民意调查。因此,您将收到 1 个请求的 1 个答案。只要你不发送,你就不会收到。

对于转换和发送什么命令,请检查我提供的链接。

更多链接:

AT 命令
OBD-II 命令

于 2013-03-28T14:41:38.753 回答
3

如果你想使用这个库,你应该下载源代码。源代码是不言自明的。还有一个示例应用程序的源代码。我尝试运行示例应用程序,但它对我不起作用。但是,我查看了源代码,它对我的​​应用程序有所帮​​助。

在这个库中,您会发现已经实现且易于使用的主要查询。我只在 ObdResetCommand 类上发现了一个错误。此类实现超类 ObdCommand 并以这种方式覆盖 readResult 方法:

@Override
public void readResult(InputStream in) throws IOException {
    // do nothing
    return;
}

要使其工作,您应该删除此覆盖方法以使用超类之一。如果您不这样做,则不会读取响应,它将在以下命令中读取,因此,每个响应都会延迟一个查询。

我希望它有所帮助。

于 2013-07-15T14:10:02.140 回答