为什么 CAN 硬件接受过滤器出现在接收中?

why CAN hardware acceptance filter present in receive?

enter image description here

我对 CAN HW 对象感兴趣。

我知道 CAN 接受过滤器正在更改 CAN ID 过滤。

为什么接收中存在 CAN 硬件接受过滤器?

当收到CAN报文时,是否执行CAN仲裁程序?

CAN报文传输时,是否不需要CAN仲裁?

接受过滤器用于根据ID过滤接收到的CAN报文,这样固件就不会被它不感兴趣的报文打断。过滤器在硬件接收到报文后应用。如果消息不能通过任何过滤器,它就会被丢弃。这可以防止不必要的硬件中断。

TX 端不需要任何过滤器,因为固件设计者选择发送什么。

每个节点在传输期间通过在传输时对总线进行采样来执行 CAN 仲裁程序。如果发送节点仲裁失败,则停止发送以稍后重试。

总线上的节点只接收仲裁获胜的消息。仲裁过程是 CAN 协议的基本和嵌入式部分,它始终存在并且是必要的。