CanC 发表于 2022-5-19 20:34:02

FlexCAN例程问题

我修改了FlexCAN例程的txIdentifier和rxIdentifier部分,用三个板子进行CAN通信,不同的板子发送不同ID的数据。设备1发送ID=0x105,接收ID=0x135;设备2发送ID=0x135,接收ID=0x165;设备3发送ID=0x165,接收ID=0x105。但是最后实验发现,rxIdentifier根本没有用呀。只用设备1跟设备3进行通信的时候,设备3也会显示接收完成( rxComplete = ture)
/* Select mailbox ID. */
    if ((node_type == 'A') || (node_type == 'a'))
    {
      txIdentifier = 0x165;
      rxIdentifier = 0x105;
    }
    else
    {
      txIdentifier = 0x165;
      rxIdentifier = 0x105;
    }




CanC 发表于 2022-5-19 22:17:31

调试了几遍,发现例程里面好像并没有写滤波的部分

forqs 发表于 2022-5-20 14:25:49

源码里大致是这里https://www.yunzhijia.com/docrest/file/downloadfile/628731efa34f33000198a507?big,您说的对,是没有进行过滤,您可以参考官方手册里can章节,我们这里没测试过特定id,例程里是接受所有的。

CanC 发表于 2022-5-20 17:11:28

forqs 发表于 2022-5-20 14:25
源码里大致是这里,您说的对,是没有进行过滤,您可以参考官方手册里can章节,我们这里没测试过特定id,例 ...

好的,谢谢
页: [1]
查看完整版本: FlexCAN例程问题