【发布时间】:2015-03-23 15:22:21
【问题描述】:
我正在尝试制作一个在 Windows 下运行并与 ELM327 设备通信的软件。我创建了第一个版本,然后我进入了我的 SMART ForTwo (SMART 451) 车辆,并设法与仪表板连接(发送 CAN ID 为 782,接收 CAN ID 为 783)。但是我对流控制有一个很大的问题。这是日志:
TX:ATI RX:ELM327 v1.5a
TX:ATE0 接收:ATE0 正常
TX:ATSP6 接收:好的
TX:ATH1 接收:好的
TX:ATL1 接收:好的
TX:ATCFC1 接收:好的
TX:ATFCSM0 接收:好的
TX:ATAL 接收:好的
TX:ATSH782 接收:好的
TX:ATCRA783 RX:?
TX:ATST64 接收:好的
TX:1092 接收:783 02 1A 87
TX:1A87 接收:783 10 16 5A 87 05 6E 00 08
我使用了另一个工具,我看到 ELM327 设备立即发送流控制帧。是这样的:
891.438 782 02 1A 87
891.444 783 10 16 5A 87 05 6E 00 08
891.444 782 30 00 00 00 00 00 00 00
如您所见 - 流控制帧的发送时间与第一帧完全相同,第一帧是从其他设备发送的。我确信其他设备在接收“流控制”帧时有问题。 我研究了 ELM327 文档,但没有找到任何有关如何延迟流控制帧的信息。 我应该如何正确发送请求“1A 87”并收到响应?
【问题讨论】:
-
我不认为有什么办法可以拖延!