8

我想开始在 iOS/Objective-C 中针对基于ELM327的汽车OBD-II蓝牙适配器进行编码。是否有关于如何开始的指南/入门?

我会想象 ELM327 适配器​​是一个串行设备......我可能会弄清楚如何与手机建立蓝牙连接,但我不知道从哪里开始向/从它发送/接收 OBD-II 消息.

此设备是否有预先存在的 API?

4

2 回答 2

6

如果您需要一些 OBDKey 特定命令,请告诉我。例如,要访问 RPM 数据,请发出以下命令

ATZ\r
ATSP0\r
0100\r
010C\r

这些指令将初始化 OBDKey 接口,将协议搜索设置为自动,初始化与发动机管理ECU的通信,并发送模式 1 PID 0C 命令以请求发动机速度 (RPM) 数据。响应 010C 命令返回的值实际上是发动机实际转速值的四倍。

在 iOS / Objective-C 中使用套接字和流是设置与 OBDKey WLAN 通信的最佳方式(默认 IP 地址为 192.168.0.74,端口 23)。

于 2011-03-23T08:47:18.490 回答
4

elm327 odb2 设备使用ATODB命令。AT
命令与您在调制解调器上使用 的命令相同,它们始终以AT开头。

当设备初始化它发送

ELM327 v2.1
>

如果你发送

ATZ

这将重置设备并再次发出“ELM327 v2.1”和 > 提示。

AT命令用于管理 elm327 设备。

ODB命令是 asci 十六进制的,例如上面的例子

01 0c

获取 rpm 或

01 05

获得冷却液温度

http://www.elmelectronics.com/obdic.html上有包含更多详细信息的数据表 pdf 文件。
您也可以在 ituns 中搜索“elm327”并获得 2 本关于该主题的免费书籍。

我刚刚为我的通用 elm327 wifi 设备启动了相同的项目,所以我还没有任何细节。
一旦我学到任何有用的东西,我会添加评论。

于 2014-12-19T15:56:27.063 回答