从昨天开始,我就一直在研究这个话题。我想开发关于 obd-ii 扫描仪的 android 应用程序。Github或Google Codes上有很多开源项目。我必须找到 obd-ii 模拟器来开发这个没有汽车或任何 odb-ii 芯片的应用程序。
我找到了 OBDSim 来创建示例数据并回答我的应用程序发送的请求。我遇到了很多问题,通过阅读很多文档和博文解决了这些问题。但我有最后一个问题,我需要你的帮助。
新版本的 OBDsim 支持 Windows 蓝牙连接现在使用com0com。当我安装 com0com 时,我遇到了签名问题,我解决了这个问题以禁用相关的 Windows 功能。我还将蓝牙的传入端口设置为 COM4。到目前为止一切都很好。之后,我想使用 com0com 创建虚拟端口。它在安装时已经创建了一对。它们是 CNCA0 和 CNCB0。我只是想将这对的第二个端口从 CNCB0 更改为 COM4。但是 windows 给出了关于 COM4 已经在使用的错误。我仍然完成并分配了 COM4 而不是 CNCB0。之后我运行 obdsim.exe 并开始像这样创建日志;
SimPort name: CNCA0
Successfully initialised obdsim, entering main loop
10.046624 seconds. 0 samples, 0 queries. 0.00 s/s, 0.00 q/s
10.049810 seconds. 0 samples, 0 queries. 0.00 s/s, 0.00 q/s
10.049377 seconds. 0 samples, 0 queries. 0.00 s/s, 0.00 q/s
在此期间,我开始使用 android 应用程序并按下开始实时数据按钮。我在安卓手机上给出了关于蓝牙连接错误的错误 - 读取失败,套接字可能关闭或超时。这是一种情况。
在第二种情况下,我删除了中断 com0com 并将 OBDsim 直接连接到 COM4。我再次运行 obdsim.exe。它也具有与之前场景相同的输出。在我开始像这样的 android 应用程序输出更改之后。
Echo disabled
Echo disabled
Echo disabled
10.066543 seconds. 0 samples, 6 queries. 0.00 s/s, 0.60 q/s
Echo disabled
Echo disabled
Echo disabled
Echo disabled
Echo disabled
10.030909 seconds. 0 samples, 5 queries. 0.00 s/s, 0.50 q/s
Echo disabled
Echo disabled
Echo disabled
Echo disabled
Echo disabled
Echo disabled
10.034040 seconds. 0 samples, 6 queries. 0.00 s/s, 0.60 q/s
Echo disabled
Echo disabled
Echo disabled
而且我看不到我的应用程序有任何变化。
如果您知道问题出在哪里,或者我犯了什么错误或忘记了什么,我正在等待或您的帮助。
谢谢。