WCH沁恒单片机
直播中

刘慧

8年用户 1868经验值
私信 关注
[问答]

CH579网络接收过滤匹配问题求解

接收过滤设置寄存器(R8_ETH_ERXFCON) 这个寄存器的说明看得有点难理解:
7 RB_ETH_ERXFCON_UCEN RW  目标地址匹配过滤设置: 0:不使用该过滤条件; 1:RB_ETH_ERXFCON_ANDOR=0 目标地址 匹配将被接收,RB_ETH_ERXFCON_ANDOR  =1 目标地址不匹配将被过滤。
6 RB_ETH_ERXFCON_ANDOR RW  过滤条件 AND 和 OR 设置: 0:任一过滤条件满足包均被接收; 1:所有过滤条件都满足包才被接收。 0  
5 RB_ETH_ERXFCON_CRCEN RW  CRC 校验过滤设置: 0:不使用该过滤条件; 1:RB_ETH_ERXFCON_ANDOR=0 CRC 校验 正确将被接收,RB_ETH_ERXFCON_ANDOR  =1 CRC 校验错将被过滤。 0  
4 Reserved RO 保留。 0  
3 RB_ETH_ERXFCON_MPEN RW  魔法包过滤设置: 0:不使用该过滤条件; 1:RB_ETH_ERXFCON_ANDOR=0 魔法包将 被接收,RB_ETH_ERXFCON_ANDOR=1 非魔 法包将被过滤。 0  
2 RB_ETH_ERXFCON_HTEN RW  hash 表匹配过滤设置: 0:不使用该过滤条件; 1:RB_ETH_ERXFCON_ANDOR=0 hash 表匹 配将被接收,RB_ETH_ERXFCON_ANDOR =1  hash 表不匹配将被过滤。 0  
1 RB_ETH_ERXFCON_MCEN RW  组播包匹配过滤设置: 0:不使用该过滤条件; 1:RB_ETH_ERXFCON_ANDOR=0 组播包匹 配将被接收,RB_ETH_ERXFCON_ANDOR=1 组播包不匹配将被过滤。 0  
0 RB_ETH_ERXFCON_BCEN RW  广播包匹配过滤设置: 0:不使用该过滤条件; 1:RB_ETH_ERXFCON_ANDOR=0 广播包将 被接收,RB_ETH_ERXFCON_ANDOR=1 非广 播包将被过滤。
这里第7位的目标地址是指哪个地址?
然后如果我要过滤掉组播包应该怎么配置呢?
RB_ETH_ERXFCON_ANDOR    RB_ETH_ERXFCON_MCEN
       0                 1                  组播包匹配将被接收
       1                 1                  组播包不匹配将被过滤 (组播包匹配也将被接收?)
这两个不正是同一个意思吗?
  

回帖(1)

闫颖慧

2022-10-9 09:42:01
接收过滤设置寄存器(R8_ETH_ERXFCON)使用的时候RB_ETH_ERXFCON_ANDOR需要设置为0。
在此种状态下:
(1)广播包一定能被接收。
(2)其他位设置为1时,对应的过滤模式将会收到对应的包。
举报

更多回帖

发帖
×
20
完善资料,
赚取积分