我正在开发这个应用程序,它要求我从OBD II适配器读取VIN,并检查OBD是否连接到同一车辆。当我发送命令(09 02)来获取VIN时,我无法获取完整的VIN。
每次我发送命令时,我都不会收到前3个字符。我唯一收到的是VIN的最后7个字符,有时我会得到前7个字符。
找不到哪里出了问题。
任何形式的帮助或支持都将非常感谢。
发布于 2014-11-05 15:46:44
是的,并不是每个制造商都支持此命令($09 $02)来读取VIN。不同的制造商使用不同的命令。请提供更详细的信息,以便您能得到一个好的答案:
发布于 2013-11-07 21:10:28
我也不能得到VIN号码的响应。我们从一些车里得到了车辆识别码,但不是全部。然后,在我们了解到并不是每个汽车制造商都提供VIN号码支持之后。我们还实现了VIN号码解码,只需发送命令"0902\r“,无论我们得到什么响应,都会像下面提到的url中提到的那样进行解析。我还通过发送0100命令检查了模式9支持的PID
http://elmelectronics.com/DSheets/ELM327DS.pdf
你能告诉我你是如何用蓝牙obd2设备得到车辆识别码的回复的吗?我使用的是obd2 plx kiwi2wifi设备。
所以我不认为你能从所有的车里得到车辆识别码的响应。
请看我的问题
Unable to Get VIN Number response from OBD-2 Device,如果你有解决方案,请回复我
发布于 2016-10-11 22:12:09
这篇文章有点老了,但可能对其他人有帮助!
VIN通常约为20个字符。在CAN协议中,由于每条消息的数据内容限制为8个字节,因此应该在多条消息中发送(取决于应答)。
首先你应该向控制器发送一个消息,然后控制器将以第一帧(FF)响应,然后你应该发送一个流控制消息(FC)来告诉控制器发送其他数据。这是CAN协议中多帧报文的处理过程。这是我为MCP2515回答的post。由于它是CAN总线协议,因此该过程与其他设备相同。
请随时提出任何问题!
https://stackoverflow.com/questions/19831678
复制相似问题