Other Parts Discussed in Thread: TMDSCNCD28388D, C2000WARE
Tool/software:
Hi experts,
My customer is using F28388D (TMDSCNCD28388D) for evaluation, and I would like to confirm some things about Normal 1MHz, Data 4MHz communication in CAN-FD.
Q1: Are the following register settings no problem?
bitTimingParams.dataRatePrescalar = 0x0U; // Data Baud Rate Pre-scaler.
bitTimingParams.dataTimeSeg1 = 0x7U; // Data Time segment before SP
bitTimingParams.dataTimeSeg2 = 0x0U; // Data Time segment after SP
bitTimingParams.dataSynchJumpWidth = 0x0U; // Data SJW
Q2: Is 5MHz the maximum bit rate for the Data section for CAN-FD?
Currently, they are using 40MHz, which is System 200MHz divided by 5.
The maximum frequency does not seem to be defined in the data sheet or TRM.
[Details]
The CAN communication pin of the TMDSCNCD28388D is connected to a CAN transceiver, and the CanBus is not connected to any other devices, only a termination resistor.
The CanBus CANH signal is observed with an oscilloscope.
The values set with reference to the sample code "mcan_ex9_transmit.c" in C2000WARE and "MCAN_BitTimingCalculator.xls" are shown below, but it seems that only the Norm part is sent and the Data part is not sent.
bitTimingParams.dataRatePrescalar = 0x0U; // Data Baud Rate Pre-scaler.
bitTimingParams.dataTimeSeg1 = 0x4U; // Data Time segment before SP
bitTimingParams.dataTimeSeg2 = 0x3U; // Data Time segment after SP
bitTimingParams.dataSynchJumpWidth = 0x3U; // Data SJW
After adjusting the sampling point with Cut-and-Try using the thread below, communication was possible when dataTimeSeg1 + dataTimeSeg2 = 7.
:e2e.ti.com/.../tms320f28388d-can-fd-not-working-at-some-rate-combinations
However, since the ideal value for 1 bit at 4MHz is 250ns, when only dataTimeSeg1 was changed to 0-6, the Data part was not sent.
When dataTimeSeg1 = 8, the Data part is sent, but it is 300ns.
[Waveform]
Normal 1MHz, Data 2MHz
Normal 1MHz, Data 4MHz[BitTimingCalculator]
Normal 1MHz, Data 4MHz[Manual]
If there is a problem with the setting value or the approach to adjusting the register value is incorrect, please let us know.
Best regards,
O.H
