Linux CAN套接字 - 处理错误帧

时间:2013-02-18 10:50:25

标签: linux can-bus

我知道如果CAN传输中存在错误,系统将生成特定的错误帧。但我无法想象如何使其发挥作用。

我设置了我的CAN套接字,然后我写了数据:

write(s, (struct sockaddr *)&addr, sizeof(addr))

总线上没有任何连接,所以我希望CAN_ERR_ACK,但没有任何东西到来。

PS:启用了错误接收。

怎么了?

1 个答案:

答案 0 :(得分:0)

您可能必须启用错误接收

can_err_mask_t err_mask = CAN_ERR_ACK ;
setsockopt(skt, SOL_CAN_RAW, CAN_RAW_ERR_FILTER,&err_mask, sizeof(err_mask));