This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

RM44L920: DCAN recieve interrupt not entering ISR

Part Number: RM44L920

I am using DCAN1 for sending and DCAN2 for receiving , i checked with logic analyzer that both signals are sent and received but the CAN receive doesn't gets into ISR while data is incoming into the Pins.Can anyone explain me y the canMessageNotification is not working.I have enabled the global interrupt and CAN1 & CAN2 HIGH interrupts also.

  • There are three "gates" before an interrupt request gets to the CPU:

    • The module that generates an interrupt request has a register to enable each interrupt that it can generate.  

                  

                     and

                           

    • The Vectored Interrupt Manager (VIM) has registers to allow an interrupt request from a module to be forwarded to the CPU as per the priority scheme (lower channel number first).

               

    • Finally the CPU itself must be configured to respond to the interrupt requests forwarded by the VIM (IRQ or FIQ).

                _enable_IRQ()

  • Hi Wang,

    I enabled all the configuration as you mentioned above , but still CAN interrupt is not being triggered and i get error notifications such as "canLEVEL_WARNING" & "canLEVEL_BUS_OFF ".even the example programs are not working properly.

  • This means that the message is not transmitted and received correctly.

  • "canLEVEL_BUS_OFF "

    BusOff occurs when the transmit error count raises above 255. Th error may be CRC error, ACK error, stuff error, bit error, etc.