LIN Controller (LINFlex)
MPC5606S Microcontroller Reference Manual, Rev. 7
832 Freescale Semiconductor
 
Eqn. 23-1
LFDIV is an unsigned fixed point number. The 12-bit mantissa is coded in the LINIBRR and the fraction 
is coded in the LINFBRR.
The following examples show how to derive LFDIV from LINIBRR and LINFBRR register values:
Example 23-1. Deriving LFDIV from LINIBRR and LINFBRR register values
If LINIBRR = 27d and LINFBRR = 12d, then
Mantissa (LFDIV) = 27d
Fraction (LFDIV) = 12/16 = 0.75d
Therefore LFDIV = 27.75d
Example 23-2. Programming LFDIV from LINIBRR and LINFBRR register values
To program LFDIV = 25.62d, 
LINFBRR = 16 × 0.62 = 9.92, nearest real number 10d = 0xA
LINIBRR = mantissa (25.620d) = 25d = 0x19
NOTE
The baud counters are updated with the new value of the baud registers after 
a write to LINIBRR. Hence the baud register value must not be changed 
during a transaction. The LINFBRR (containing the Fraction bits) must be 
programmed before the LINIBRR.
NOTE
LFDIV must be greater than or equal to 1.5d, i.e. LINIBRR = 1 and 
LINFBRR = 8. Therefore, the maximum possible baudrate is 
fperiph_set_1_clk / 24.
Table 23-1. Error calculation for programmed baud rates 
Baud
rate
f
periph_set_1_clk
 =  MHz f
periph_set_1_clk
 = 16 MHz
Actual
Value programmed 
in
the baud rate 
register
% Error = 
(Calculated – 
Desired) 
baud rate
/ Desired 
baud rate
Actual
Value programmed in
the baud rate register
% Error = 
(Calculated – 
Desired) 
baud rate
/ Desired 
baud rate
LINIBRR LINFBRR LINIBRR LINFBRR
10417
10416.7 384 0 –0.003 10416.7 96 0 –0.003
Tx/ Rx baud =
f
periph_set_1_clk
(16 × LFDIV)