17.1 Control Registers
TABLE 17-1: SPI1 THROUGH SPI4 REGISTER MAP
Bits
31/15
30/14 29/13
28/12
27/11
26/10
25/9
24/8
23/7
22/6
21/5
20/4
19/3
18/2
17/1
16/0
5800
5810
5820
5830
5840
SPI1CON
SPI1STAT
SPI1BUF
SPI1BRG
SPI1CON2
31:16 FRMEN FRMSYNC FRMPOL
15:0 ON
—
SIDL
31:16 —
—
—
15:0 —
—
—
31:16
15:0
31:16 —
—
—
15:0 —
—
—
31:16 —
—
—
15:0
SPI
SGNEXT
—
—
MSSEN
DISSDO
FRMERR
—
—
—
FRM
ERREN
FRMSYPW
FRMCNT<2:0>
MCLKSEL
MODE32 MODE16 SMP
CKE
SSEN
RXBUFELM<4:0>
—
SPIBUSY
—
—
SPITUR SRMT
DATA<31:0>
—
—
—
SPI
ROVEN
—
—
—
SPI
TUREN
—
—
—
IGNROV
—
—
IGNTUR
—
—
AUDEN
—
CKP
—
SPIROV
—
—
—
—
MSTEN
—
SPIRBE
—
DISSDI
—
—
—
SPIFE ENHBUF 0000
STXISEL<1:0>
SRXISEL<1:0> 0000
TXBUFELM<4:0>
0000
SPITBE
—
SPITBF SPIRBF 19EB
0000
—
—
—
—
BRG<8:0>
—
—
—
—
—
—
AUD
MONO
—
—
—
—
—
AUDMOD<1:0>
0000
0000
0000
0000
0000
5A00
5A10
5A20
5A30
5A40
SPI2CON
SPI2STAT
SPI2BUF
SPI2BRG
SPI2CON2
31:16 FRMEN FRMSYNC FRMPOL
15:0 ON
—
SIDL
31:16 —
—
—
15:0 —
—
—
31:16
15:0
31:16 —
—
—
15:0 —
—
—
31:16 —
—
—
15:0
SPI
SGNEXT
—
—
MSSEN
DISSDO
FRMERR
—
—
—
FRM
ERREN
FRMSYPW
FRMCNT<2:0>
MCLKSEL
MODE32 MODE16 SMP
CKE
SSEN
RXBUFELM<4:0>
—
SPIBUSY
—
—
SPITUR SRMT
DATA<31:0>
—
—
—
SPI
ROVEN
—
—
—
SPI
TUREN
—
—
—
IGNROV
—
—
IGNTUR
—
—
AUDEN
—
CKP
—
SPIROV
—
—
—
—
MSTEN
—
SPIRBE
—
DISSDI
—
—
—
SPIFE ENHBUF 0000
STXISEL<1:0>
SRXISEL<1:0> 0000
TXBUFELM<4:0>
0000
SPITBE
—
SPITBF SPIRBF 19EB
0000
—
—
—
—
BRG<8:0>
—
—
—
—
—
—
AUD
MONO
—
—
—
—
—
AUDMOD<1:0>
0000
0000
0000
0000
0000
5C00
SPI3CON
31:16 FRMEN FRMSYNC FRMPOL
15:0 ON
—
SIDL
MSSEN
DISSDO
FRMSYPW
FRMCNT<2:0>
MODE32 MODE16 SMP
CKE
MCLKSEL
SSEN
—
CKP
—
—
MSTEN DISSDI
—
—
STXISEL<1:0>
SPIFE ENHBUF 0000
SRXISEL<1:0> 0000
5C10
SPI3STAT
31:16
15:0
—
—
—
—
RXBUFELM<4:0>
—
—
—
TXBUFELM<4:0>
0000
—
— FRMERR SPIBUSY
—
—
SPITUR SRMT SPIROV SPIRBE
—
SPITBE
—
SPITBF SPIRBF 19EB
31:16
5C20 SPI3BUF 15:0
DATA<31:0>
0000
0000
5C30
SPI3BRG
31:16
15:0
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
—
— 0000
—
—
—
BRG<8:0>
0000
Legend: x = unknown value on Reset; — = unimplemented, read as ‘0’. Reset values are shown in hexadecimal.
Note 1:
2:
All registers in this table except SPIxBUF have corresponding CLR, SET and INV registers at their virtual addresses, plus offsets of 0x4, 0x8 and 0xC, respectively. See Section 11.2 “CLR, SET, and INV
Registers” for more information.
This register is only available on 100-pin devices.