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.

TMS570LS1114: CAN

Part Number: TMS570LS1114
Other Parts Discussed in Thread: HALCOGEN

Dear,

Q.1:  Could  the CAN send FIFO in TMS570 ? How to realize sending function?

Question 2:"" uint32 canFillMessageObjectData(canBASE_t *node, uint32 messageBox, const uint8 * data)  ""  what is the function ?  how to use ?

Question 3: CAN sends less than 8 bytes of data. After  updating the MCTL of Message box, why is still 8 bytes the MCTL value read by the receiver? does  CAN send only 8 bytes?

  • Q.1:  Could  the CAN send FIFO in TMS570 ? How to realize sending function?

    Yes, you mailbox config is correct. The EOB of the last buffer should be set to 1, and the EOB of all the other buffers should be cleared.

    Question 2:"" uint32 canFillMessageObjectData(canBASE_t *node, uint32 messageBox, const uint8 * data)  ""  what is the function ?  how to use ?

    This is a API generated by HALCOGen. It is used to write data to the message object in CAN memory RAM, but doesn't trigger the message transmission.

    Question 3: CAN sends less than 8 bytes of data. After  updating the MCTL of Message box, why is still 8 bytes the MCTL value read by the receiver? does  CAN send only 8 bytes?

    Yes, the DLC (data length code) is programmable. DLC = 0~7. When the Message Handler stores a Data Frame in the message object, it will store the received Data Length Code and eight data bytes. If the Data Length Code is less than 8, the remaining bytes of the message object may be overwritten by non specified values.