Datasheet

UM10398 All information provided in this document is subject to legal disclaimers. © NXP B.V. 2014. All rights reserved.
User manual Rev. 12.3 — 10 June 2014 200 of 547
NXP Semiconductors
UM10398
Chapter 13: LPC111x/LPC11Cxx UART
13.5.1 UART Receiver Buffer Register (U0RBR - 0x4000 8000, when
DLAB = 0, Read Only)
The U0RBR is the top byte of the UART RX FIFO. The top byte of the RX FIFO contains
the oldest character received and can be read via the bus interface. The LSB (bit 0)
represents the “oldest” received data bit. If the character received is less than 8 bits, the
unused MSBs are padded with zeroes.
The Divisor Latch Access Bit (DLAB) in U0LCR must be zero in order to access the
U0RBR. The U0RBR is always Read Only.
Since PE, FE and BI bits (see Table 196
) correspond to the byte sitting on the top of the
RBR FIFO (i.e. the one that will be read in the next read from the RBR), the right approach
for fetching the valid pair of received byte and its status bits is first to read the content of
the U0LSR register, and then to read a byte from the U0RBR.
13.5.2 UART Transmitter Holding Register (U0THR - 0x4000 8000 when
DLAB = 0, Write Only)
The U0THR is the top byte of the UART TX FIFO. The top byte is the newest character in
the TX FIFO and can be written via the bus interface. The LSB represents the first bit to
transmit.
The Divisor Latch Access Bit (DLAB) in U0LCR must be zero in order to access the
U0THR. The U0THR is always Write Only.
13.5.3 UART Divisor Latch LSB and MSB Registers (U0DLL - 0x4000 8000
and U0DLM - 0x4000 8004, when DLAB = 1)
The UART Divisor Latch is part of the UART Baud Rate Generator and holds the value
used, along with the Fractional Divider, to divide the UART_PCLK clock in order to
produce the baud rate clock, which must be 16x the desired baud rate. The U0DLL and
U0DLM registers together form a 16-bit divisor where U0DLL contains the lower 8 bits of
the divisor and U0DLM contains the higher 8 bits of the divisor. A 0x0000 value is treated
like a 0x0001 value as division by zero is not allowed. The Divisor Latch Access Bit
(DLAB) in U0LCR must be one in order to access the UART Divisor Latches. Details on
how to select the right value for U0DLL and U0DLM can be found in Section 13.5.15
.
Table 185. UART Receiver Buffer Register (U0RBR - address 0x4000 8000 when DLAB = 0,
Read Only) bit description
Bit Symbol Description Reset Value
7:0 RBR The UART Receiver Buffer Register contains the oldest received
byte in the UART RX FIFO.
undefined
31:8 - Reserved -
Table 186. UART Transmitter Holding Register (U0THR - address 0x4000 8000 when
DLAB = 0, Write Only) bit description
Bit Symbol Description Reset Value
7:0 THR Writing to the UART Transmit Holding Register causes the data
to be stored in the UART transmit FIFO. The byte will be sent
when it reaches the bottom of the FIFO and the transmitter is
available.
NA
31:8 - Reserved -