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.

TCAN4550: TCAN4550

Part Number: TCAN4550

Tool/software:

I have two questions about TCAN4550:
1. CANH/CANL are shorted to VCC/GND respectively for testing. After the test, CANH/CANL return to normal, but TCAN4550 cannot perform CAN communication normally.
2. Human intervention causes Vdiff to deviate from the normal value. After the intervention is removed, TCAN4550 can no longer perform CAN communication normally.
For the above two abnormalities, can TCAN4550 identify specific error information and generate interrupts to the MCU?

Vdiff is shown in the figure below:

  • Hello Arabella,

    If the TCAN4550 was trying to transmit messages when the fault condition (shorts) occurred, it would likely register those as a Transmit Error and increase the Transmit Error Counter (TEC).  Per the CAN Protocol, if the TEC counter exceeds 255, the device will enter a Bus Off  (BO) state and CAN communication is disabled.  If this occurs, there will need to be some intervention by the MCU to recover from the Bus Off state and allow the device to start communicating on the CAN bus. 

    If the device has entered BO state, the INIT bit of the Control Register (0x1018) will bet set to "1" and the device will also enter Standby Mode (indicated with the MODE_SEL field in the Config register 0x0800[7:6]).  To recover, the device will need to be placed into Normal Mode and the INIT bit will need to be reset to "0".  These bits should be tied together in the device.  Once this is done, the device will follow the CAN Standard Protocol for error counter reduction and recovery.  A device reset and re-configuration is also a possible recovery method.

    I would recommend monitoring the various Status, Interrupt, and Error Counter registers to determine if the device has entered a BO condition, and if not, what other bits are set that could explain your observations.  (0x000C, 0x0820, 0x0824 or 0x1050, 0x1040, and 0x01044)

    Regards,

    Jonathan