我已经知道如何与OBD2适配器建立wifi连接,但我不知道如何从中请求信息。像010C一样是以十六进制形式返回引擎RPM的命令,但是如何将“010C”发送到OBD2适配器?我可以为Java和Python等语言找到答案,甚至是OBD框架,但对swift没有任何帮助。感谢。
答案 0 :(得分:0)
我们的java实现需要转换String消息,例如" 010C"或者" ATZ"到byte []然后将这些字节发送到OBD2适配器。我想你也必须为快速做同样的事情。
以下是使用OBD2适配器的资源,可以帮助您:http://elmelectronics.com/DSheets/ELM327DS.pdf
答案 1 :(得分:0)
如果您已经建立了与WiFi适配器的套接字通信,那么要么将套接字绑定到一对NSStream
并使用这些套接字发送/接收数据,要么使用CoreFoundation
API或低-level posix
API用于发送/接收数据。
你可能想要更高级别的东西。我在https://github.com/mickeyl/LTSupportAutomotive为iOS和macOS创建了一个OBD2库。它是用Objective-C编写的,需要使用Swift桥接标题才能使它对您有用,但这可能是您深入了解该主题的好方法。
答案 2 :(得分:0)