SDK Bug in CAN FIFO

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

SDK Bug in CAN FIFO

1,405 Views
wangshizhen
Contributor I

Hello:

   I has a project that need the FIFO of CAN. CAN 0 FIFO work fine, but when i use CAN1 FIFO,the programe will enter DefaultISR.

  I found a bug when I debug CAN SDK(085 or 086) API, The CAN 1 only have max 16 RXIMR,but the the SDK use 32 to initial RXIMR:

FLEXCAN_DRV_Init-->FLEXCAN_EnableRxFifo:

code:

for (i = 0; i < CAN_RXIMR_COUNT; i++)
{
/* RX individual mask */
base->RXIMR[i] = (CAN_RXIMR_MI_MASK << CAN_ID_EXT_SHIFT) & (CAN_ID_STD_MASK | CAN_ID_EXT_MASK);
}

the CAN_RXIMR_COUNT is 32.

The CAN1 FIFO program will work fine when I change CAN_RXIMR_COUNT to 16 .

kind regards

Labels (1)
1 Reply

1,047 Views
AnaAldescu
NXP Employee
NXP Employee

Hello,

The number of RXIMR registers is equal to the number of message buffer for each instance. Thank you for reporting this issue. It will be fixed in the next release for S32 SDK for S32K1xx devices.

Best regards,

Ana