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.

TMS570LC4357: CAN Bus not Sending Acks

Part Number: TMS570LC4357
Other Parts Discussed in Thread: HALCOGEN, TCAN337

Hi Team,

TMS5704357 in a design where it needs to receive extended-ID CAN bus frames with any arbitrary ID Our HALCoGen configuration is shown in the following photo.

You can see in the logic analyzer capture below that there is no ack, which should be provided by the TMS570. I believe that with our HALCoGen config it should ack any frame ID. Why is the TMS570 not sending an ack on these frames? I should also note that the CAN interrupt handler code is not entered at any point.

 

The TCAN337 IC is being used to interface the MCU with the system CAN bus, if that matters

Thank you.

-Mar

  • Hi Mar,

    Does the receiver have the same baudrate as the transmitter? Is there any error flag in your transmitter side?

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

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

    2. 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).

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

    for example: _enable_IRQ();

  • Hi Mark,

    It may be caused by different baud rates among the nodes. Make sure all nodes on the CAN bus network are configured to have the same baud rate.

    Each CAN message receiver that has received the frame without error will drive the CAN bus to the dominant state in the acknowledge slot. The CAN message transmitter detects that the CAN bus is driven to the dominant state and thus knows that the message has been received by at least one other node without errors.