SERIAL PORT (UART)
The LPC47U33x incorporates one full function
UART. It is compatible with the NS16450, the
16450 ACE registers and the NS16C550A. The
UART performs serial-to-parallel conversion on
received characters and parallel-to-serial
conversion on transmit characters. The data
rates are independently programmable from
460.8K baud down to 50 baud. The character
options are programmable for 1 start; 1, 1.5 or 2
stop bits; even, odd, sticky or no parity; and
prioritized interrupts. The UART contains a
programmable baud rate generator that is
capable of dividing the input clock or crystal by
a number from 1 to 65535. The UART is also
capable of supporting the MIDI data rate. Refer
to the Configuration Registers for information on
disabling, power down and changing the base
address of the UART. The interrupt from the
UART is enabled by programming OUT2 to a
logic "1". OUT2 being a logic "0" disables that
UART's interrupt.
Note: The UART and MPU-401 may be
configured to share an interrupt. Refer to the
Configuration section for more information.
Register Description
Addressing of the accessible registers of the
Serial Port is shown below. The base address
of the serial port is defined by the configuration
registers (see Configuration section). The Serial
Port registers are located at sequentially
increasing addresses above the base address.
The serial port contains a register set as
described below.
Table 33 - Addressing the Serial Port
DLAB* A2
A1
A0
REGISTER NAME
0
0
0
0 Receive Buffer (read)
0
0
0
0 Transmit Buffer (write)
0
0
0
1 Interrupt Enable (read/write)
X
0
1
0 Interrupt Identification (read)
X
0
1
0 FIFO Control (write)
X
0
1
1 Line Control (read/write)
X
1
0
0 Modem Control (read/write)
X
1
0
1 Line Status (read/write)
X
1
1
0 Modem Status (read/write)
X
1
1
1 Scratchpad (read/write)
1
0
0
0 Divisor LSB (read/write)
1
0
0
1 Divisor MSB (read/write
*Note: DLAB is Bit 7 of the Line Control Register
72