SPI Registers and Waveforms
968
SPRUH22I – April 2012 – Revised November 2019
Copyright © 2012–2019, Texas Instruments Incorporated
C28 Serial Peripheral Interface (SPI)
Figure 12-17. SPI Emulation Buffer Register (SPIRXEMU) — Address 7046h
15
14
13
12
11
10
9
8
ERXB15
ERXB14
ERXB13
ERXB12
ERXB11
ERXB10
ERXB9
ERXB8
R-0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
7
6
5
4
3
2
1
0
ERXB7
ERXB6
ERXB5
ERXB4
ERXB3
ERXB2
ERXB1
ERXB0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
LEGEND: R/W = Read/Write; R = Read only; -
n
= value after reset
Table 12-13. SPI Emulation Buffer Register (SPIRXEMU) Field Descriptions
Bit
Field
Value
Description
15-0
ERXB15
−
ERXB0
Emulation Buffer Received Data. SPIRXEMU functions almost identically to SPIRXBUF, except that
reading SPIRXEMU does not clear the SPI INT FLAG bit (SPISTS.6). Once the SPIDAT has
received the complete character, the character is transferred to SPIRXEMU and SPIRXBUF, where
it can be read. At the same time, SPI INT FLAG is set.
This mirror register was created to support emulation. Reading SPIRXBUF clears the SPI INT
FLAG bit (SPISTS.6). In the normal operation of the emulator, the control registers are read to
continually update the contents of these registers on the display screen. SPIRXEMU was created
so that the emulator can read this register and properly update the contents on the display screen.
Reading SPIRXEMU does not clear the SPI INT FLAG bit, but reading SPIRXBUF clears this flag.
In other words, SPIRXEMU enables the emulator to emulate the true operation of the SPI more
accurately.
It is recommended that you view SPIRXEMU in the normal emulator run mode.
12.3.1.6 SPI Serial Receive Buffer Register (SPIRXBUF)
SPIRXBUF contains the received data. Reading SPIRXBUF clears the SPI INT FLAG bit (SPISTS.6).
Figure 12-18. SPI Serial Receive Buffer Register (SPIRXBUF) — Address 7047h
15
14
13
12
11
10
9
8
RXB15
RXB14
RXB13
RXB12
RXB11
RXB10
RXB9
RXB8
R-0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
7
6
5
4
3
2
1
0
RXB7
RXB6
RXB5
RXB4
RXB3
RXB2
RXB1
RXB0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
R-0
LEGEND: R/W = Read/Write; R = Read only; -
n
= value after reset
Table 12-14. SPI Serial Receive Buffer Register (SPIRXBUF) Field Descriptions
Bit
Field
Value
Description
15-0
RXB15
−
RXB0
Received Data. Once SPIDAT has received the complete character, the character is transferred to
SPIRXBUF, where it can be read. At the same time, the SPI INT FLAG bit (SPISTS.6) is set. Since
data is shifted into the SPI’s most significant bit first, it is stored right-justified in this register.
12.3.1.7 SPI Serial Transmit Buffer Register (SPITXBUF)
SPITXBUF stores the next character to be transmitted. Writing to this register sets the TX BUF FULL Flag
bit (SPISTS.5). When transmission of the current character is complete, the contents of this register are
automatically loaded in SPIDAT and the TX BUF FULL Flag is cleared. If no transmission is currently
active, data written to this register falls through into the SPIDAT register and the TX BUF FULL Flag is not
set.
In master mode, if no transmission is currently active, writing to this register initiates a transmission in the
same manner that writing to SPIDAT does.