Atmel Evaluation Kit AT91SAM9X25-EK AT91SAM9X25-EK Data Sheet

Product codes
AT91SAM9X25-EK
Page of 1151
666
SAM9X25 [DATASHEET]
11054E–ATARM–10-Mar-2014
The end of transfer is indicated by the TXEMPTY flag in the SPI_SR register. If a transfer delay (DLYBCT) is greater than 
0 for the last transfer, TXEMPTY is set after the completion of said delay. The master clock (MCK) can be switched off at 
this time.
The transfer of received data from the Shift Register in SPI_RDR is indicated by the RDRF bit (Receive Data Register 
Full) in the Status Register (SPI_SR). When the received data is read, the RDRF bit is cleared. 
If the SPI_RDR (Receive Data Register) has not been read before new data is received, the Overrun Error bit (OVRES) 
in SPI_SR is set. As long as this flag is set, data is loaded in SPI_RDR. The user has to read the status register to clear 
the OVRES bit.
 shows a flow 
chart describing how transfers are handled.
35.7.3.1  Master Mode Block Diagram
Figure 35-5. Master Mode Block Diagram
Shift Register
SPCK
MOSI
LSB
MSB
MISO
SPI_RDR
RD
SPI 
Clock
TDRE
SPI_TDR
TD
RDRF
OVRES
SPI_CSR0..3
CPOL
NCPHA
BITS
MCK
Baud Rate Generator
SPI_CSR0..3
SCBR
NPCS3
NPCS0
NPCS2
NPCS1
NPCS0
0
1
PS
SPI_MR
PCS
SPI_TDR
PCS
MODF
Current
Peripheral
SPI_RDR
PCS
SPI_CSR0..3
CSAAT
PCSDEC
MODFDIS
MSTR