
M0A21/M0A23 Series
May 06, 2022
Page
419
of 746
Rev 1.02
M0
A21
/M
0
A
2
3
SE
RIES
TEC
H
NICAL
RE
FEREN
C
E
M
ANUAL
UART_CLK
IrDA Encode
TX Shift Register
TX_FIFO
RX_FIFO
RX Shift Register
IrDA Decode
Baud Out
Baud Out
Status & Control
Status & Control
Baud Rate
Generator
FIFO & Line
Control and Status
Register
MODEM
Control and Status
Register
Interrupt
Control
& status
UART Interrupt
APB_BUS
Auto Baud Rate
UART_nRTS
UART_TXD
UART_nCTS
UART_RXD
Figure 6.11-2 UART Block Diagram
Each block is described in detail as follows:
TX_FIFO
The transmitter is buffered with a 16 bytes FIFO to reduce the number of interrupts presented to the
CPU.
RX_FIFO
The receiver is buffered with a 16 bytes FIFO (plus three error bits, BIF (UART_FIFOSTS[6]), FEF
(UART_FIFOSTS[5]), PEF (UART_FIFOSTS[4])) to reduce the number of interrupts presented to the
CPU.
TX Shift Register
This block is responsible for shifting out the transmitting data serially.
RX Shift Register
This block is responsible for shifting in the receiving data serially.
Modem Control and Status Register
This register controls the interface to the MODEM or data set (or a peripheral device emulating a
MODEM).
Baud Rate Generator
Divide the external clock by the divisor to get the desired baud rate clock. Refer to baud rate equation.
IrDA Encode
This block is IrDA encoding control block.
IrDA Decode
This block is IrDA decoding control block.
FIFO & Line Control and Status Register
This field is register set that including the FIFO control register (UART_FIFO), FIFO status register