s32k144 64 pin 20mhz xtal the can2 can't work,
change the xtal 20mhz &change 64pin the can0,can 2 not work
so, you have got some own board where 64pin MCU is mounted and it uses 20MHz crystal?
Then what is not working in fact? Please be more specific. The MCU does not start at all. Or just CAN module issue is seen? For example CAN module cannot be initialized, does not transmit or receive or ....?
i have s32k144 board the xtal was 20mhz.
the spi work and the can 0,can2 not work but the mcu are running.
can driver init passed.
and sent can message only one time sent passed and the mcu can0tx,can0rx no any signal
and 2nd send can message the can status always busy status.
mean no any signal at s32k144 pin PTE5,PTE4 or can2 PTB12,PTB13,
the 20mhz xtal work narmal
try to connect CAN0 TX pin to RX pin, without transceiver, and send a message. If message is visible on this external loopback connection then most probably you have an issue with transceiver.
Also check value of the ESR1 and ECR registers.
ESR1 and ECR registers are 0x00.why?
if modules leaves Freeze mode, you should see SYNCH bit set, meaning module is synchronized to the bus.
If not most probably pin setting is wrong, or externally RX pin is held low. So this status you see when you connect TX to RX without transceiver? Did you measure pins by scope?
connect TX to RX without transceiver? yes without transceiver
Did you measure pins by scope?yes keep low;
what is SYNCH bit ?
then must be something with a pin, wrong config maybe. Are you able to toggle pins when configured as GPIO?
After leaving Freeze mode FlexCAN drives TX pin high, so should be read from RX high too, representing idle condition. In such case the ESR1[SYNCH] should be set indicating module is synchronized to the bus and transmission can be started. So try disconnect TX and RX pins, just tied RX pin high and send a message. Module must enter bus off and you must see error frames on TX.
Retrieving data ...