![NXP Semiconductors MKL27Z128VFM4 Reference Manual Download Page 576](http://html1.mh-extra.com/html/nxp-semiconductors/mkl27z128vfm4/mkl27z128vfm4_reference-manual_1721847576.webp)
SPIx_S field descriptions (continued)
Field
Description
is 1), SPRF is automatically cleared when the DMA transfer for the receive DMA request is completed (RX
DMA Done is asserted).
When FIFOMODE is 1: This bit indicates the status of the read FIFO when FIFOMODE is enabled. The
SPRF is set when the read FIFO has received 64 bits (4 words or 8 bytes) of data from the shifter and
there have been no CPU reads of the SPI data (DH:DL) register. When the receive DMA request is
disabled (RXDMAE is 0), SPRF is cleared by reading the SPI data register, resulting in the FIFO no longer
being full, assuming another SPI message is not received. When the receive DMA request is enabled
(RXDMAE is 1), SPRF is automatically cleared when the first DMA transfer for the receive DMA request is
completed (RX DMA Done is asserted).
0
No data available in the receive data buffer (when FIFOMODE is not present or is 0) or Read FIFO is
not full (when FIFOMODE is 1)
1
Data available in the receive data buffer (when FIFOMODE is not present or is 0) or Read FIFO is full
(when FIFOMODE is 1)
6
SPMF
SPI Match Flag
SPMF is set after SPRF is 1 when the value in the receive data buffer matches the value in the MH:ML
registers. To clear the flag, read SPMF when it is set and then write a 1 to it.
0
Value in the receive data buffer does not match the value in the MH:ML registers
1
Value in the receive data buffer matches the value in the MH:ML registers
5
SPTEF
SPI Transmit Buffer Empty Flag (when FIFO is not supported or not enabled) or SPI transmit FIFO empty
flag (when FIFO is supported and enabled)
When the FIFO is not supported or not enabled (FIFOMODE is not present or is 0): This bit is set when
the transmit data buffer is empty. When the transmit DMA request is disabled (TXDMAE is 0), SPTEF is
cleared by reading the S register with SPTEF set and then writing a data value to the transmit buffer at
DH:DL. The S register must be read with SPTEF set to 1 before writing data to the DH:DL register;
otherwise, the DH:DL write is ignored. When the transmit DMA request is enabled (TXDMAE is 1), SPTEF
is automatically cleared when the DMA transfer for the transmit DMA request is completed (TX DMA Done
is asserted). SPTEF is automatically set when all data from the transmit buffer transfers into the transmit
shift register. For an idle SPI, data written to DH:DL is transferred to the shifter almost immediately so that
SPTEF is set within two bus cycles, allowing a second set of data to be queued into the transmit buffer.
After completion of the transfer of the data in the shift register, the queued data from the transmit buffer
automatically moves to the shifter, and SPTEF is set to indicate that room exists for new data in the
transmit buffer. If no new data is waiting in the transmit buffer, SPTEF simply remains set and no data
moves from the buffer to the shifter.
When the FIFO is not supported or not enabled (FIFOMODE is not present or is 0): If a transfer does not
stop, the last data that was transmitted is sent out again.
When the FIFO is supported and enabled (FIFOMODE is 1): This bit provides the status of the FIFO rather
than an 8-bit or a 16-bit buffer. This bit is set when the transmit FIFO is empty. When the transmit DMA
request is disabled (TXDMAE is 0), SPTEF is cleared by writing a data value to the transmit FIFO at
DH:DL. When the transmit DMA request is enabled (TXDMAE is 1), SPTEF is automatically cleared when
the DMA transfer for the transmit DMA request is completed (TX DMA Done is asserted). SPTEF is
automatically set when all data from the transmit FIFO transfers into the transmit shift register. For an idle
SPI, data written to the DH:DL register is transferred to the shifter almost immediately, so that SPTEF is
set within two bus cycles. A second write of data to the DH:DL register clears this SPTEF flag. After
completion of the transfer of the data in the shift register, the queued data from the transmit FIFO
automatically moves to the shifter, and SPTEF will be set only when all data written to the transmit FIFO
has been transfered to the shifter. If no new data is waiting in the transmit FIFO, SPTEF simply remains
set and no data moves from the buffer to the shifter.
Table continues on the next page...
Memory map/register definition
KL27 Sub-Family Reference Manual , Rev. 5, 01/2016
576
Freescale Semiconductor, Inc.