ZLGCANTest软件是一款CAN通信调试工具,在调试中我们经常需要滤波,只接收特定的帧ID,方便查看数据,下面我先给大家讲解滤波的原理,然后再举例说明如何设置滤波器。
工具/原料
电脑,CANTest软件
方法/步骤
1、在开始使用滤波器之前,先向大家讲解十六进制帧ID如何与二进制对应,如下图1;十六进遄咿湫幼制帧ID:0xGHIJKLMN,其中N对应Byte0的bi墉掠载牿t0-bit3,M对应Byte0的bit4-bit7;。。。;而G对应的是Byte3的bit4。
2、了解上述对应关系后。在实际应用中,假如我们只想接收帧ID高四位是0x1864的爷颔帘涝帧,那么我们要先换算成2进制,把0旌忭檀挢x64换算成8位的Byte2,把0x18换算成5位的Byte3;换算后的结果是Byte2=01100100;Byte3=11000,如下图:
3、换算完毕以后,我们来设置滤波器,因上述步骤我都是用29位标识符做的讲解,所以下面我们也以扩展帧举例。打开滤波器设置界面,选择滤波模式为“扩展帧单滤波(仅ID,自由设定)”如下图
4、把第二步换算的二进制数据设置进去,如下图1;因我们只对十六进制的高四位进行滤波,所以滤波器的低四位全部设置为X(X表示不参与滤波)。
5、设置完毕后,点击确定回到主界面,能看到我们只接收了十六进制帧ID高四位为0x1864的帧,其他帧已经被滤掉。
6、上例只是对一种情况进行了介绍,但滤波的原理是相通的,只要大家搞懂原理,就可以举一反三。