【问题标题】:ANDROID ELM327/OBD2 PROTOCOLANDROID ELM327/OBD2 协议
【发布时间】:2013-02-27 16:42:03
【问题描述】:

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

【问题讨论】:

    标签: android obd-ii


    【解决方案1】:

    你真正想知道什么?

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

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

    更多链接:

    AT Commands
    OBD-II Commands

    【讨论】:

    【解决方案2】:

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

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

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

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

    希望对你有帮助。

    【讨论】:

    猜你喜欢
    • 2012-10-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-20
    • 2023-03-19
    • 2012-10-24
    • 2018-12-05
    • 2010-12-15
    相关资源
    最近更新 更多