CAN_FilterTypeDef ft = {0};
ft.FilterIdHigh = (0x321 << 5); // 标准帧ID左移5位
ft.FilterIdLow = 0;
ft.FilterMaskIdHigh = 0x7FF << 5; // 全掩码=精确匹配
ft.FilterMaskIdLow = 0;
ft.FilterFIFOAssignment = CAN_RX_FIFO0;
ft.FilterActivation = ENABLE;
HAL_CAN_ConfigFilter(&hcan1, &ft);
CAN_RxHeaderTypeDef rh;
uint8_t data[8];
HAL_CAN_Receive(&hcan1, CAN_RX_FIFO0, &rh, data, 100);
// rh.StdId==0x321 才会进入本FIFO