Part Number: TMS320F280025C
Other Parts Discussed in Thread: TMS320F280025
Hi,
I am working with the LIN module in SCI compatibility mode on the TMS320F280025, and I am trying to understand how the baud rate generator works. While reviewing the TMS320F28002x Real-Time Microcontrollers Technical Reference Manual, revised March 2024, I found some inconsistencies that I would like clarification on.
On page 96, the imagesshows that the LIN module is fed by PERx.SYSCLK, which is equal to SYSCLK.
On page 2456, it also states that "LIN VCLK is equal to the SYSCLK frequency".
On page 2460, it states "In the asynchronous timing mode, each bit in a frame has a duration of 16 SCI baud clock periods".
On page 2454, it states that "At 100MHz peripheral clock, 3.125Mbits/s is the maximum baud rate achievable".
On page 2461, the following formulas are presented:
"SCICLK Frequency = VCLK Frequency / (P+1+M/16) (1)
Asynchronous baud value = SCICLK Frequency/16 (2)
For P = 0,
Asynchronous baud value = VCLK Frequency/32 (3)"
Inconsistencies:
a) Where did the "32" in equation (3) come from? Combining (1) and (2) for P = M = 0 results in baud = VCLK / 16
b) If VCLK = SYSCLK and 1 bit = 16 SCICLK pulses, the maximum achievable baud rate for 100 MHz would be 6.250Mbits/s
Questions:
-
What exactly is VCLK for the LIN module on F28002x? Is it truly SYSCLK, or is there an implicit division before the baud generator?
- Is the duration of the bit 16 or 32 SCICLK cycles?
-
Is the correct effective formula for baud actually: baud = VCLK / [32 × (P + 1 + M/16)] ?
-
In conclusion, if SYSCLK = 20 MHz, is the maximum achievable baud rate 625 kbit/s?
Thanks in advance for the clarification.
Best regards,
Filipe