UM10147_2
© NXP B.V. 2008. All rights reserved.
User manual
Rev. 02 — 28 April 2008
66 of 134
NXP Semiconductors
UM10147
P89LPC952/954 User manual
–
If DBISEL_n is logic 1 and INTLO_n is logic 0, a Tx interrupt will occur at the
beginning of the STOP bit of the data currently in the shifter (which is also the last
data).
–
If DBISEL_n is logic 1 and INTLO_n is logic 1, a Tx interrupt will occur at the end of
the STOP bit of the data currently in the shifter (which is also the last data).
–
Note that if DBISEL_n is logic 1 and the CPU is writing to SnBUF when the STOP
bit of the last data is shifted out, there can be an uncertainty of whether a Tx
interrupt is generated already with the UART not knowing whether there is any
more data following.
6. If there is more data, the CPU writes to SBUF again. Then:
–
If INTLO_n is logic 0, the new data will be loaded and a Tx interrupt will occur at
the beginning of the STOP bit of the data currently in the shifter.
–
If INTLO_n is logic 1, the new data will be loaded and a Tx interrupt will occur at
the end of the STOP bit of the data currently in the shifter.
–
Go to 3.
10.18 The 9th bit (bit 8) in double buffering (Modes 1, 2, and 3)
If double buffering is disabled (DBMOD_n, i.e. SnSTAT.7 = 0), TB8_n can be written
before or after SnBUF is written, provided TB8_n is updated before that TB8_n is shifted
out. TB8_n must not be changed again until after TB8_n shifting has been completed, as
indicated by the Tx interrupt.
Fig 25. Transmission with and without double buffering.
TXD
write to
SBUF
TX interrupt
single buffering (DBMOD/SSTAT.7 = 0), early interrupt (INTLO/SSTAT.6 = 0) is shown
TXD
write to
SBUF
TX interrupt
double buffering (DBMOD/SSTAT.7 = 1), early interrupt (INTLO/SSTAT.6 = 0) is shown,
no ending TX interrupt (DBISEL/SSTAT.4 = 0)
TXD
write to
SBUF
TX interrupt
double buffering (DBMOD/SSTAT.7 = 1), early interrupt (INTLO/SSTAT.6 = 0) is shown,
with ending TX interrupt (DBISEL/SSTAT.4 = 1)
002aaa928