I am using S32K314 , and recently I got a issue about CAN when I doing the test by short-circuiting of the oscillator ;
after recovery ,I monitored SPI ,ADC ,these modules works OK, but CAN module can not work normally,
the debuger show these information, in this status, CAN can not receive or send any fram,
how could this happened, and how to recover this fault by sw?
Hi,
Thanks for your reply .
I try to add some test code in "Mcu_ClockSourceFailure_Notification" , but this notification do not be trigged;
so from software side , how can we notice this issue happened then reset CAN Module?
thanks
Below is the value of the registers you mentioned:
MCR
CTRL1
CBT:
FDCBT:
ECR
ESR1
Hi,
From the provided screenshot, the receive error counter (RXERRCNT) is increasing while TXERRCNT remains 0, which does not fully match a typical transmit-related issue even though ESR1 indicates a transmission attempt is ongoing.
The oscillator short-circuit could potentially have affected the clocking, resulting e.g. in incorrect CAN bit timing after recovery. However, the current information is not sufficient to confirm this.
Could you please provide:
If the FlexCAN module clock and the CAN protocol clock are running and have the expected frequency, you can also try performing a FlexCAN module software reset followed by a complete module reinitialization and check whether communication is restored.
BR, Petr