
DR
AFT
DR
AFT
DRAFT
DR
D
RAFT
DRAFT
DRA
FT DRAF
D
RAFT DRAFT DRAFT DRAFT DRAFT D
DRAFT
D
RAFT DRA
FT DRAFT DRAFT DRAFT DRA
UM10360_0
© NXP B.V. 2009. All rights reserved.
User manual
Rev. 00.06 — 5 June 2009
285 of 808
NXP Semiconductors
UM10360
Chapter 14: LPC17xx UART0/2/3
This register controls the clock pre-scaler for the baud rate generation. The reset value of
the register keeps the fractional capabilities of UART0/2/3 disabled making sure that
UART0/2/3 is fully software and hardware compatible with UARTs not equipped with this
feature.
UART0/2/3 baud rate can be calculated as (n = 0/2/3):
(2)
Where PCLK is the peripheral clock, U0/2/3DLM and U0/2/3DLL are the standard
UART0/2/3 baud rate divider registers, and DIVADDVAL and MULVAL are UART0/2/3
fractional baud rate generator specific parameters.
The value of MULVAL and DIVADDVAL should comply to the following conditions:
1. 0 < MULVAL
≤
15
2. 0
≤
DIVADDVAL
<
15
3. DIVADDVAL<MULVAL
The value of the U0/2/3FDR should not be modified while transmitting/receiving data or
data may be lost or corrupted.
If the U0/2/3FDR register value does not comply to these two requests, then the fractional
divider output is undefined. If DIVADDVAL is zero then the fractional divider is disabled,
and the clock will not be divided.
4.12.1 Baud rate calculation
UARTn can operate with or without using the Fractional Divider. In real-life applications it
is likely that the desired baud rate can be achieved using several different Fractional
Divider settings. The following algorithm illustrates one way of finding a set of DLM, DLL,
MULVAL, and DIVADDVAL values. Such set of parameters yields a baud rate with a
relative error of less than 1.1% from the desired one.
Table 263: UARTn Fractional Divider Register (U0FDR - address 0x4000 C028,
U2FDR - 0x4009 8028, U3FDR - 0x4009 C028) bit description
Bit
Function
Value Description
Reset
value
3:0
DIVADDVAL
0
Baud-rate generation pre-scaler divisor value. If this field is
0, fractional baud-rate generator will not impact the UARTn
baudrate.
0
7:4
MULVAL
1
Baud-rate pre-scaler multiplier value. This field must be
greater or equal 1 for UARTn to operate properly,
regardless of whether the fractional baud-rate generator is
used or not.
1
31:8
-
NA
Reserved, user software should not write ones to reserved
bits. The value read from a reserved bit is not defined.
0
UARTn
baudrate
PCLK
16
256
UnDLM
×
UnDLL
+
(
)
×
1
DivAddVal
MulVal
-----------------------------
+
⎝
⎠
⎛
⎞
×
----------------------------------------------------------------------------------------------------------------------------------
=