首页 > 解决方案 > socketcan Candump - 如何扩展 CAN ID?

问题描述

我想将车辆的CAN数据接收到套接字CAN并将其发送到服务器。(原始数据)

因此,CAN ID 在对发送到服务器的原始数据进行后处理时非常重要。Candump和wireshark接收到的CAN数据ID只有3位,很难区分是哪个数据。比如我需要接收的CAN ID虽然是0x1f532d10,但是从socketcan接收并显示的只有d10。

有没有办法获得整个 ID 长度?

转储

标签: linuxsocketcan

解决方案


如果您使用 SocketCAN发送帧,则需要在 can_frame 结构的 can_id 字段中设置“扩展帧格式”位,例如:

frame.can_id |= CAN_EFF_FLAG;

推荐阅读