CAN1和CAN2共用28个滤波器,因CAN2不能读取SRAM,故在单独使用CAN2时,需要先打开CAN1的时钟,然后通过CAN1来设置滤波器,完了再初始化CAN2即可实现数据收发。
CAN1的滤波器序号为0-13,CAN2的滤波器序号为14-27。
单独使用can2时,can1的时候也需要打开。 还有过滤器的设置 CAN2_FilerConf.FilterIdHigh=0X0000; //32位ID CAN2_FilerConf.FilterIdLow=0X0000; CAN2_FilerConf.FilterMaskIdHigh=0X0000; //32位MASK CAN2_FilerConf.FilterMaskIdLow=0X0000; CAN2_FilerConf.FilterFIFOAssignment=CAN_FILTER_FIFO0;//过滤器0关联到FIFO0 CAN2_FilerConf.FilterNumber=14; //CAN2的过滤器号从14开始 CAN2_FilerConf.FilterMode=CAN_FILTERMODE_IDMASK; CAN2_FilerConf.FilterScale=CAN_FILTERSCALE_32BIT; CAN2_FilerConf.FilterActivation=ENABLE; //激活滤波器0 CAN2_FilerConf.BankNumber=14; |
版权声明:本文为Qrsleizhipeng原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。