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: Nested interrupts - serial data gets corrupted while receiving CAN input

Part Number: TMS570LC4357

Hi TI experts,

Greetings!

We are using TMS570Lc43 microcontroller (FreeRTOS as a RTOS)  - two CAN channels as input.

When we receives data on both channels (separate CAN bus) we observed that serial data gets corrupted.

What modification  need to be done so that both CAN channels with serial work simultaneously.

I believe its a issue of nesting of interrupts. How it can be resolved.

Thanks in advance.

Anil 

  • Hi, our expert is out of the office. Please expect a delayed response.

  • Hi,

    Interrupt Nesting is strongly not recommended for Safety Application.

    Typically ISR's must be very quick, hence it should be of minimal code as possible. The CPU will automatically disable IRQ as soon as it enters in IRQ mode to avoid nested IRQ.

    To receive DCAN data, please use IF3x + DMA to read the received CAN message. The IF3 can be configured to automatically receive control and user data from the Message RAM when a message object has been updated after reception of a CAN message. The CPU does not need to initiate the transfer from Message RAM to IF3 register set.

  • Thanks for your reply. I am able to find and resolve issue. Issue lies with memory overwrite.

    Tbanks