我必须开发一个与汽车诊断工具通信的智能手机应用程序。一般来说,诊断中使用的协议是KWP2000、UDS和OBD。我的问题是“如何与汽车通信?以及如何使用这些协议?
问问题
3500 次
3 回答
2
也可以参考UDS: http://neweagle.net/support/wiki/index.php?title= Unified_Diagnostic_Services
如果您的汽车有 CAN 总线,那么您可能需要:
- 使用一个CAN设备连接到CAN总线(分别配置)
- 实现(从任何地方获取)TP CAN 消息支持
- 在 TP CAN 消息上使用 UDS 协议编写您的实现。
问候,
德米特里
于 2013-07-27T12:01:53.937 回答
0
自 2001 年以来的汽车在欧洲拥有 OBD-II 端口。美国自 1996 年以来我认为。
周围有各种类型的 OBD-II 连接器。内部的 ELM327 芯片使与汽车的通信变得容易,因为该芯片为我们提供了基于 ASCII 的通信。您所要做的就是发送正确的命令,您将得到 ASCII 格式的响应。
如果应用程序应该在智能手机上运行,我有几个警告要给你。大多数连接器都实现了蓝牙,Android 将支持它,但 WP7、Win8RT 和 iPhone 不支持您必须设置的蓝牙串行端口通信。还有基于 wifi ad-hoc 的连接器,它们可能是可能的。
http://en.wikipedia.org/wiki/OBD-II_PIDs
在维基百科上有一个命令列表,您可以发送这些命令来检索实时数据。
于 2013-03-22T09:18:36.280 回答