CANFD MCP2517FD 滤波ID设置例子

本文介绍了如何设置MCP2517FD CANFD滤波器,以接收特定ID的标准帧和扩展帧。通过示例代码说明了滤波ID的配置,包括SID和EID的掩码设置,并提供了数据手册下载链接。此外,还讨论了MCP2517读写寄存器的时间消耗以及如何检测CAN总线上的匹配电阻。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MCP2517FD滤波ID设置

    //	DRV_CANFDSPI_FilterDisable(DRV_CANFDSPI_INDEX_0,CAN_FILTER0);//先禁用过滤器
    // Setup RX Filter
    fObj.word = 0;
    fObj.bF.SID = 0x44;    //SID自身发送ID  SID只接收0x44
    fObj.bF.SID11 =0;
    fObj.bF.EID = 0x2000;  //EID只接收0x20000
    fObj.bF.EXIDE = 1;     //1支持扩展帧
    
		
    DRV_CANFDSPI_FilterObjectConfigure(DRV_CANFDSPI_INDEX_0, CAN_FILTER0, &fObj.bF);

    // Setup RX Mask  下面代表了掩码MASK
    mObj.word = 0;         //0代表Dont Care
    mObj.bF.MSID = 0x7FF;  //SID:标准ID  11位掩码
    mObj.bF.MSID11 = 0;
    mObj.bF.MEID = 0x3FFFF;//EID:扩展ID 18位掩码
    mObj.bF.MIDE = 1;      //Match IDE bits
   
    DRV_CANFDSPI_FilterMaskConfigure(DRV_CANFDSPI_INDEX_0, CAN_FILTER0, &mObj.bF);
    // Link FIFO and Filter
    DRV_CANFDSPI_FilterToFifoLink(DRV_CANFDSPI_INDEX_0, CAN_FILTER0, APP_RX_FIFO, true);

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值