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.

TDA4VM: One busoff operation triggers two interrupts

Part Number: TDA4VM

In SDK8.2, by setting the busoff generation condition once, two consecutive busoff interrupts are generated. The time interval between two consecutive busoff interrupts is about 30ms. For the first time, the BO bit, EP bit, EW bit and PED bit of MCAN_IR register are set to 1. The second time, only the BO bit of MCAN_IR register is set to 1.

This will cause the ongoing busoff recovery strategy to be interrupted when the busoff is generated for the second time, so that a new busoff recovery strategy will be implemented again. Because of this, the time of the busoff fast recovery strategy in the application program has been extended, resulting in that the fast recovery time does not meet the requirements of the vehicle manufacturer's specifications.

Therefore, I want to ask if the busoff generation condition is valid once in SDK8.2, and whether the busoff interrupt can be generated once. If not, what measures can be taken to avoid the problem.

In addition, whether it can be considered that only the recovery strategy of the first busoff can be processed, and the second busoff interrupt generated continuously can be discarded without any processing.

Thank you very much.

  • Hello,

    In MCAN_IR register ,

    BO ,EP ,EW bits are set only if the status was changed from their earlier status (Can be considered as relative status). PED bit indicates there is error in data phase.

    For example :

    Initailly BO = 0, bus off status changed from "no bus off state" to "bus off state" then BO sets to 1 , if the state continues the BO sets to 0 . But if the state again changes from "Bus off state " to "No bus off state" the BO sets to 1

    To understand more , MCAN_PSR register will be more helpful .

    In MCAN_PSR register BO,EW,EP status gives the absolute status of current case.

    For detailed knowledge look into TDA4VM TRM under MCAN Core Registers.

    Regards

    Tarun Mukesh