根据项目需求,需要对STM8A 的CAN标识符进行过滤设置,使得总线上部分需要的ID可以通过过滤器。
允许通过的ID范围:0xxxxxxx00
允许通过的ID:0x18FF00A3和0x18FF01A3
CAN软件代码实现如下:
/* 标识符过滤器设置 */
CAN_FilterNumber = CAN_FilterNumber_0; //过滤器组编号 0
CAN_FilterActivation = ENABLE; //DISABLE使能过滤器组配置 ,ENABLE如果所有的过滤器都失能的话,会收不到报文
CAN_FilterMode = CAN_FilterMode_IdList; //列表模式
CAN_FilterScale = CAN_FilterScale_32Bit; //过滤器组的位宽 32位 包括:STDID[10:0]/EXTID[28:18