Part Number: AM625
Other Parts Discussed in Thread: TCAN1051, SYSCONFIG
Hi all,
i am trying to get the MCU-MCAN to work but am facing some problems here.
CCS V12.2.0.000009
mcu_plus_sdk_am62x_08_05_00_14
I have a module with EVAL-Main Board and connect both MCU_MCAN via TCAN1051 to the bus.
the TCAN1051 hardware is tested with another solution and is working perfectly, so no issues here.
I simply use the MCU_MCAN_ loopback example without loopback mode :
mcan_loopback_interrupt_am62x-sk-lp_m4fss0-0_nortos_ti-arm-clang
If i connect my PC-test-SW i always get a Form Error and by probing i only see SOF on the Oszi-display.
MCAN has to operate @1MHz / 2MHz so Bittimings are set the following:
bitTimes.dataRatePrescalar=1u; -> leads to 40MHz clk and to get 2 MHz DR a bit time has 20 tq
bitTimes.dataSynchJumpWidth=3u;
bitTimes.dataTimeSeg1=14u;
bitTimes.dataTimeSeg2=3u;
bitTimes.nomRatePrescalar=3u;
bitTimes.nomSynchJumpWidth=3u;
bitTimes.nomTimeSeg1=14u;
bitTimes.nomTimeSeg2=3u;
(with sysconfig i set the decimal values but in ti_drivers_config.c i found the hex values instead )
MCAN_BitTimingParams gMcanBitTimingDefaultParams =
{
.nomRatePrescalar = 0x3U,
.nomTimeSeg1 = 0x14U,<---- this is 20 dezimal, not 14
.nomTimeSeg2 = 0x3U,
.nomSynchJumpWidth = 0x3U,
.dataRatePrescalar = 0x1U,
.dataTimeSeg1 = 0x14U,<---- this is 20 dezimal, not 14
.dataTimeSeg2 = 0x3U,
.dataSynchJumpWidth = 0x3U,
};
in struct initParams i enabled TDC (time delay compensation) without setting tdco or tdcu.
but i also tried values for them with [3u+((bitTimes.dataTimeSeg1+bitTimes.dataTimeSeg2)/2u)]
same result -> Form Error.
Can anyone give me some advice what i am doing wrong here?
Br's
Martin