
CHAPTER 20 SERIAL INTERFACE UNIT 2 (SIU2)
User’s Manual U14272EJ3V0UM
389
When transmit FIFO is enabled and transmit interrupts are enabled, transmit interrupt requests can occur as
described below.
1. When the transmit FIFO becomes empty, a transmit holding register empty interrupt request occurs.
This interrupt request is cleared when a character is written to the transmit holding register (from one to
16 characters can be written to the transmit FIFO during servicing of this interrupt), or when the SIUIID_2
register is read.
2. If there are not at least two bytes of character data in the transmit FIFO between one time when the LSR5
bit = 1 (transmit FIFO is empty) in the SIULS_2 register and the next time when the LSR5 bit = 1, transmit
FIFO empty status is reported to the IIR bits after a delay period calculated as “the time for one character
the time for the last stop bit(s)”.
When transmit interrupts are enabled, the first transmit interrupt request that occurs after the FCR0 bit
(FIFO enable bit) in the SIUFC_2 register is overwritten is indicated immediately.
The priority level of the character timeout interrupt and receive FIFO trigger level interrupt is the same as that of
the receive data ready interrupt.
The priority level of the transmit FIFO empty interrupt is the same as that of the transmit holding register empty
interrupt.
Whether data to be transmitted exists or not in the transmit FIFO and the transmit shift register, check the LSR6
bit of the SIULS_2 register. The LSR5 bit of the SIULS_2 register is used to check whether data to be transferred
exists or not in the transmit FIFO only. Therefore, there may be data in the transmit shift register.
FIFO polling mode
When the FCR0 bit = 1 (FIFO is enabled) in the SIUFC_2 register, if the value of any or all of the SIUIE_2
register bits 3 to 0 becomes 0, SIU2 enters FIFO polling mode. Because the transmit block and receive block
are controlled separately, polling mode can be set for either or both blocks.
When in this mode, the status of the transmit block and/or receive block can be checked by reading the SIULS_2
register via a user program.
When in the FIFO polling mode, there is no notification when the trigger level is reached or when a timeout
occurs, but the receive FIFO and transmit FIFO can still store characters as they normally do.