Strictly necessary cookies are on by default and cannot be turned off. Functional, Performance and Tracking/targeting/sharing cookies can be turned on below based on your preferences (this banner will remain available for you to accept cookies). You may change your cookie settings by deleting cookies from your browser. Then this banner will appear again. You can learn more details about cookies HERE.
Strictly necessary (always on)
Functional, Performance and Tracking/targeting/sharing (default off)
In the 16FX (MB96600 series) C_CAN sample project, CAN messages were not received on some RX channels when MessageObjects larger than 16 were used. How can I solve this issue?
In the MB96600 series C-CAN sample code, there is a bug in the c_can.c file, which does not allow any MessageObject number larger than 16 to be passed to the message buffer. This resulted in the failure. The following code is an example to fix the issue:
//MB96620 sample project, c_can.c
Line 137: void TxRx_Judge_0(void)
unsigned short MsgNbr = 0x00;
unsigned long MsgBuffer;
MsgNbr = IO_CAN2.INTR2; //stor MsgNbr
if( (MsgNbr>=1) && (MsgNbr<=0x20) ) // valid buffer number