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.

TMS570LS0714: TMS570 CAN Interrupt - determine if it is from an RX mailbox or TX mailbox

Part Number: TMS570LS0714

Hi,

For our Project, we are using the Microcontroller TMS570LS0714 and enabled the CAN1 RX interrupt and CAN1 TX interrupt.

When the interrupt triggers, the value obtained from the DCAN1 INT register gives the number of message object that caused the interrupt.

However, I wanted to know if we could determine if the CAN TX caused the interrupt or the CAN RX caused the interrupt (something similar to the TMS470 where the corresponding bit of the CANMD register indicates if it is transmit or receive mailbox).

Specifically could we find out if message object number that caused the interrupt is of TX type or RX type through the IF registers or some other registers?

Thanks and regards,
Abrar

  • Hello,

    Message Object interrupts are generated by events from the message objects. They are controlled by the flags IntPND, TxIE, and RxIE. For the message object that receives data if RxIE is set then IntPND will will rise and interrupt will be generated (if enabled). If RxIE is not set then no interrupt will be generated. The same is for TxIE. If TxIE is not set then interrupt will not be generated because IntPND flag will not rise.

    Best regards,

    Miro