
ML674001 Series/ML675001 Series User’s Manual
Chapter 18
UART with FIFO(16byte)
18-27
18.3.4
Buffered Operation
Received Data Available Interrupts
Enabling both the receive queue and receive interrupts produces a received data available interrupt when
the number of characters in the queue exceeds the specified trigger level. The hardware immediately clears
this interrupt when the number of characters in the queue falls back to this trigger level.
The received data available bit in IIR is similar in operation. It goes to “1” when the number of characters
in the queue exceeds the specified trigger level and returns to “0” when the number of characters in the
queue falls back to this trigger level. It goes to “1” immediately after the hardware transfers the triggering
data from the receive shift register to the queue and returns to “0” when the queue becomes empty.
Receiver line status interrupts have higher priority than these interrupts.
Character Timeout Interrupts
Enabling both the receive queue and receive interrupts produces a character timeout interrupt when the
following conditions are met.
There is at least one character in the receive queue.
The time equivalent of at least four characters has elapsed since the last character was received (If the
frame format specifies two stop bits, the timer starts after the first stop bit.) or since the last character
was read off the queue.
If the frame format specifies one start bit, eight character bits, one parity bit, and two stop bits, for example,
the timeout interval for a transfer speed of 300 baud is approximately 160 ms.
The clock used to calculate the character time is CCLK.
Reading a character from the queue clears the character timeout interrupt and resets the timeout detection
timer.
If there is no character timeout interrupt pending, the hardware resets the timeout detection timer each time
that the CPU reads a character from the queue or the interface receives a new character.
Transmitter Holding Register Empty Interrupts
Enabling both the transmit queue and receive queue interrupts produces a transmitter holding register
empty interrupt when the transmit queue is empty. Writing a character to the transmit queue or reading IIR
clears this interrupt.
This interrupt is delayed by the time equivalent of the frame less the final stop bit when the following
conditions are met.
There is only a single character in the queue after the transmitter holding register empty (THRE) bit
goes to “1.”
The THRE bit goes to “1.”