Canplayer 不会重播 candump 文件
Canplayer won't replay candump files
我正在尝试使用 canplayer 重播一些 candump 文件,但没有成功。当我尝试 运行 canplayer 时,它只是执行 returns,让我不知道发生了什么。
到目前为止我尝试过的内容:
设置 1
- 设置vcan接口
- 使用cansend和cangen向vcan接口发送数据,成功(通过candump验证)。
- 在 运行ning cangen 时从 vcan0 记录了一个 candump 文件。带绝对时间戳 (-t a) 和不带的记录文件。
- 尝试使用 canplayer 重现该文件。尝试使用多个参数,但无济于事。 canplayer 立即 returns 没有任何抱怨。如果我弄乱了它抱怨的文件或参数。
设置 2
- 已将 2 个 PEAK CAN USB 适配器设备连接到 PC。
- 使用 120 欧姆端接电缆将适配器相互连接
- 开始指向 can0 的 cangen 并使用 candump 验证消息到达 can1
- 从can0接口记录了candump文件。
- 尝试使用 canplayer 重现该文件,但没有成功。
我在两台不同的机器上尝试了这些测试,都是 运行ning Ubuntu 12.04,结果相同。
你知道它可能是什么原因吗?
看来我记录日志文件的方式有误。
我的日志文件使用以下命令进行记录:
$ candump -ta vcan0 "log.candump"
然而,该命令以人类可读的格式记录日志:
vcan0 1B3 [8] 8E 02 74 22 55 70 49 30
vcan0 658 [6] 27 48 2C 56 14 0A
vcan0 1F8 [2] 77 99
vcan0 7B7 [8] 33 A2 24 38 B2 78 86 72
vcan0 43C [8] 92 C6 81 2E FC 5E 38 35
vcan0 7B0 [2] 2D 1B
为了记录可以用canplayer播放的日志文件,应该使用
$ candump -l vcan0
或
$ candump -L vcan0 > myfile.log
录制的文件将如下所示:
(1436509052.249713) vcan0 044#2A366C2BBA
(1436509052.449847) vcan0 0F6#7ADFE07BD2
(1436509052.650004) vcan0 236#C3406B09F4C88036
(1436509052.850131) vcan0 6F1#98508676A32734
(1436509053.050284) vcan0 17F#C7
(1436509053.250417) vcan0 25B#6EAAC56C77D15E27
(1436509053.450557) vcan0 56E#46F02E79A2B28C7C
(1436509053.650713) vcan0 19E#6FE1CB7DE2218456
(1436509053.850870) vcan0 1A0#9C20407F96EA167B
(1436509054.051025) vcan0 6DE#68FF147114D1
可以使用以下命令在 canplayer 中重播该格式的文件:
$ canplayer -I candump-2015-07-10_081824.log
或
$ cat candump-2015-07-10_081824.log | canplayer
此答案归功于 Oliver Hartkopp。
我发现 this article 有一些关于使用 can 和 vcan 的重要信息。使用
使用 candump 记录物理 CAN 总线后
$ candump -l can0
如上一个答案所述。我使用以下方法通过虚拟 CAN 总线播放它。
$ canplayer vcan0=can0 -I candump-may-14-2015.log
我正在尝试使用 canplayer 重播一些 candump 文件,但没有成功。当我尝试 运行 canplayer 时,它只是执行 returns,让我不知道发生了什么。
到目前为止我尝试过的内容:
设置 1
- 设置vcan接口
- 使用cansend和cangen向vcan接口发送数据,成功(通过candump验证)。
- 在 运行ning cangen 时从 vcan0 记录了一个 candump 文件。带绝对时间戳 (-t a) 和不带的记录文件。
- 尝试使用 canplayer 重现该文件。尝试使用多个参数,但无济于事。 canplayer 立即 returns 没有任何抱怨。如果我弄乱了它抱怨的文件或参数。
设置 2
- 已将 2 个 PEAK CAN USB 适配器设备连接到 PC。
- 使用 120 欧姆端接电缆将适配器相互连接
- 开始指向 can0 的 cangen 并使用 candump 验证消息到达 can1
- 从can0接口记录了candump文件。
- 尝试使用 canplayer 重现该文件,但没有成功。
我在两台不同的机器上尝试了这些测试,都是 运行ning Ubuntu 12.04,结果相同。
你知道它可能是什么原因吗?
看来我记录日志文件的方式有误。
我的日志文件使用以下命令进行记录:
$ candump -ta vcan0 "log.candump"
然而,该命令以人类可读的格式记录日志:
vcan0 1B3 [8] 8E 02 74 22 55 70 49 30
vcan0 658 [6] 27 48 2C 56 14 0A
vcan0 1F8 [2] 77 99
vcan0 7B7 [8] 33 A2 24 38 B2 78 86 72
vcan0 43C [8] 92 C6 81 2E FC 5E 38 35
vcan0 7B0 [2] 2D 1B
为了记录可以用canplayer播放的日志文件,应该使用
$ candump -l vcan0
或
$ candump -L vcan0 > myfile.log
录制的文件将如下所示:
(1436509052.249713) vcan0 044#2A366C2BBA
(1436509052.449847) vcan0 0F6#7ADFE07BD2
(1436509052.650004) vcan0 236#C3406B09F4C88036
(1436509052.850131) vcan0 6F1#98508676A32734
(1436509053.050284) vcan0 17F#C7
(1436509053.250417) vcan0 25B#6EAAC56C77D15E27
(1436509053.450557) vcan0 56E#46F02E79A2B28C7C
(1436509053.650713) vcan0 19E#6FE1CB7DE2218456
(1436509053.850870) vcan0 1A0#9C20407F96EA167B
(1436509054.051025) vcan0 6DE#68FF147114D1
可以使用以下命令在 canplayer 中重播该格式的文件:
$ canplayer -I candump-2015-07-10_081824.log
或
$ cat candump-2015-07-10_081824.log | canplayer
此答案归功于 Oliver Hartkopp。
我发现 this article 有一些关于使用 can 和 vcan 的重要信息。使用
使用 candump 记录物理 CAN 总线后$ candump -l can0
如上一个答案所述。我使用以下方法通过虚拟 CAN 总线播放它。
$ canplayer vcan0=can0 -I candump-may-14-2015.log