CAN报文过滤不起作用

2019-03-24 12:58发布

//设置主机的报文标识符
    MsgObj_zxz.ulMsgID = MSGOBJ_ID_ZXZ;   //报文标识符  
    MsgObj_zxz.ulMsgIDMask = 0x0ff00;           //报文滤波,0不过滤,CAN ID& CAN ID MASK= =帧ID
    // 使能接收消息中断
    MsgObj_zxz.ulFlags = (MSG_OBJ_RX_INT_ENABLE | MSG_OBJ_EXTENDED_ID | MSG_OBJ_USE_ID_FILTER);
    //设定数据的大小以及对应的变量
    MsgObj_zxz.ulMsgLen = 2;                //数据为2个字节      
    MsgObj_zxz.pucMsgData = msg_zxz;      //使用变量msg_zxz
    // 配置为接收消息对象
    CANMessageSet(CAN0_BASE, MSGOBJ_NUM_ZXZ, &MsgObj_zxz, MSG_OBJ_TYPE_RX);           //设置为接收   

设置了报文过滤,但是目前是所有的报文都能接收到,什么原因,请解答,谢谢! 此帖出自小平头技术问答
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
该问题目前已经被作者或者管理员关闭, 无法添加新回复
5条回答
Study_Stellaris
1楼-- · 2019-03-24 19:22
< #define MSG_OBJ_USE_EXT_FILTER  (0x00000020 | MSG_OBJ_USE_ID_FILTER)

****.ulFlags =
        MSG_OBJ_RX_INT_ENABLE | MSG_OBJ_EXTENDED_ID | MSG_OBJ_USE_ID_FILTER |
        MSG_OBJ_USE_EXT_FILTER;

[ 本帖最后由 Study_Stellaris 于 2013-1-14 10:12 编辑 ]
fengzhang2002
2楼-- · 2019-03-24 21:34
< :TI_MSP430_内容页_SA7 --> 这样设已经试过了,还是不起作用
benbending
3楼-- · 2019-03-24 23:20
 精彩回答 2  元偷偷看……
Study_Stellaris
4楼-- · 2019-03-25 04:21
主要就是这两个寄存器的配置
CAN_O_IF1MSK1
CAN_O_IF1MSK2
benbending
5楼-- · 2019-03-25 07:16
配置过没有作用,照常都可以接收到。

一周热门 更多>

相关问题

    相关文章