CAN总线是一种用于车辆电子设备之间通信的标准协议。CAN过滤器是用来过滤CAN总线上收到的消息,从而确保只处理特定的数据帧。在CAN通信中,过滤器的配置对于性能和消息处理的准确性非常重要。
在使用ECAN-E01的单过滤模式前,我们需要知道CAN过滤器的单过滤模式(Single Filter Mode)指的是过滤器只设置一个过滤条件。这种模式下,CAN控制器会基于该单一条件来筛选接收到的CAN消息。符合过滤条件的消息将被接收并传递给上层应用处理,而不符合条件的消息则被丢弃。
1.简单易用:单过滤模式通常比较简单,适用于只关心某一类消息的场景。
2.过滤规则简单:只有一个过滤规则,用来匹配特定的标识符(ID),这对于应用程序来说可以减少复杂性。
3.性能适中:因为只有一个过滤条件,所以单过滤模式通常不会对系统性能产生过大的负担,适合低延迟要求的应用。
首先观察ECAN-E02型号can转以太网数据转换设备的单过滤器模式UI界面:
(1)CodeHigh 代表的为16-31位的数,CodeLow 代表的为0-15位的数:
(2)同理,MaskHigh 代表的为16-31位的数,MaskLow 代表的为0-15位的数:
(3)ECAN-E01的过滤界面,可以通过直接点击Code,Mask进行数据的配置,1其中,对于ST这一行,RTR代表的是远程帧,ID00-ID10代表的是标准帧ID的11位,DB1[0-7]代表的是数据帧第一个字节的8位,DB2[0-7]代表的则是数据帧第二个字节的8位(由高到低,从左到右,其中“XX”代表无需设置):
(4)对于ET这一行,RTR代表的是远程帧,ID00-ID28代表的是扩展帧ID的29位(“XX”代表无需设置)。
了解了基本的配置后,我们结合测试设置进行分析
我们要实现效果“使用网页配置为单过滤模式CodeHigh (Hex)配置为0x0020,CodeLow (Hex)配置为0x0008,MaskHigh (Hex)配置为0xFFCF,MaskLow (Hex)配置为0xFFF3,保存参数,重启设备;使用网络调试助手连接设备通道1服务器,使用CAN分析仪连接通道1CAN接口,网络调试助手仅会收到ID为奇数并且第二个数据的第四位为高的标准数据帧(例如数据位为00 08 00 00 00 00 00 00可以被接收)与ID为奇数并且ID第十七位为0第十八位为1的扩展数据帧(例如ID50001可以接收)”先设置好Code与Mask的值后,进行下一步:
首先观察可以过滤的标准数据帧,观察ST Code Mask这三行,可以发现,帧ID该位可以为1,因此在该位上任何数加一均为奇数,所以只能收到帧ID为奇数的标准帧,接下来再观察数据DB部分
此时ST DB2[3]对应的Code为1,Mask为0,代表该位必须为高位,Mask判断该位必须为Code值。
所以能接收ID为奇数并且第二个数据的第四位为高的标准数据帧(例如数据位为00 08 00 00 00 00 00 00可以被接收)
现在观察可以过滤的扩展数据帧格式,观察ET Code Mask 三行 ID00-ID28分别代表29位的扩展帧ID格式,RTR代表的是远程帧,“XX”代表不用配置。观察格式,首先,ID00位必须满足,该位必须为1,其次,观察到17位,18位对应的Mask,也必须满足第17位为0,第18位为高位的格式,所以 ID为奇数并且ID第十七位为0第十八位为1的扩展数据帧(例如ID50001可以接收)。
今天的分享就到这里啦,EBYTE每一天都致力于更好的助力物联化、智能化、自动化的发展,提升资源利用率,更多CAN总线模块和CAN总线网关产品的更多资料,感兴趣的小伙伴可以登录我们的亿佰特官网进行了解,也可以直接拨打400电话咨询技术专员!
相关阅读:
7 X 24 销售服务热线
4000-330-990深圳办事处柯经理:18218726658 南京办事处葛经理:17626012283
成都总部销售经理:
秦 科(无线模块):18884314654 冯子恒(无线模块):18884314734
蔡友银(无线模块):13882211021 葛宇龙(通信设备):19138800613
胡兵(外贸销售经理):18584911141、 sales06@ebyte.com
业务邮箱:support@cdebyte.com 全国销售投诉电话:19934352316
地址:四川省成都市高新西区西区大道199号B5栋(前台座机:028-61543675)
©© 成都亿佰特电子科技有限公司【版权所有】 蜀ICP备13019384号