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.

TMDX570LC43HDK: Multiple CAN reception callback for single CAN1

Part Number: TMDX570LC43HDK

How to receive a different CAN id message within a same CAN1 port.? 

Can you give a example of using same CAN 1 node :canREG1 with multiple CAN IDs 

How to use interrupt for CAN Tx callback using same function call "canMessageNotification" ?

How to call the CAN reception and transmitting for polling method and IRQ method?

with example will be helpfull.

  • Hello,

    TMS570LC43x has 4 DCAN modules, and each DCAN modules supports up to 64 mailboxes. 

    How to receive a different CAN id message within a same CAN1 port.? 

    You can use different mailboxes for message with different message ID. or

    You can configure mailbox's ID mask (canREG1->IF1MSK) to receive messages with different ID. The bits of mask[28:0] can be set to 0 or 1. ) means that the corresponding bit in the message identifier is not used for acceptance filtering.

    The 1st bit of message ID will be ignored by the acceptance filter, so this mailbox can receive the messages with ID of 0x5A0~0x5AF

    How to use interrupt for CAN Tx callback using same function call "canMessageNotification" ?

    canTransmit() can be used to TX data, when the frame is transmitted successfully, the TX interrupt is generated. 

    How to call the CAN reception and transmitting for polling method and IRQ method?

    If RXIE is enabled, the RX interrupt is generated after a CAN frame is received successfully. You can read the frame in canMessageNotification().

    If RXIE is not enabled, you need to poll the status (NWDATx register) before reading the data from CAN message RAM. canIsRxMessageArrived() can be used to check the status.