KDS 3.2.0 project built by ProcessorExpert. When initializing CANBus I install a mask and a filter:
void InitCAN()
{
MyCANPtr = CAN1_Init(NULL);
CAN1_Disable(MyCANPtr);
Error = CAN1_SetAcceptanceMaskTable(MyCANPtr, 0U, 0xFFFF0000 );
Error = CAN1_SetRxIDFilterTable(MyCANPtr, 0U, 0xFFFFF102); // not work with ID: 0x18DAF102
Error = CAN1_SetRxIDFilterTable(MyCANPtr, 0U, 0xFFFFE204); // that's how it works, but why?
CAN1_Enable(MyCANPtr);
}
Does not work. I found a solution, but it only works on the last two bytes. In the debate registers, I see the correct values I set.
This seems to be a microcontroller problem. But I haven't found any errata on this topic anywhere.
Perhaps the specialists from Freescale can clarify something?