English
Language : 

PIC32MX3XX_1 Datasheet, PDF (111/208 Pages) Microchip Technology – High-Performance, General Purpose and USB 32-bit Flash Microcontrollers
PIC32MX3XX/4XX
17.0 SERIAL PERIPHERAL
INTERFACE (SPI)
Note 1: This data sheet summarizes the features
of the PIC32MX3XX/4XX family of
devices. It is not intended to be a compre-
hensive reference source. To comple-
ment the information in this data sheet,
refer to Section 23. “Serial Peripheral
Interface (SPI)” (DS61106) of the
“PIC32MX Family Reference Manual”,
which is available from the Microchip web
site (www.microchip.com/PIC32).
2: Some registers and associated bits
described in this section may not be avail-
able on all devices. Refer to Section 4.0
“Memory Organization” in this data
sheet for device-specific register and bit
information.
The SPI module is a synchronous serial interface use-
ful for communicating with external peripherals and
other microcontroller devices. These peripheral
devices may be Serial EEPROMs, shift registers, dis-
play drivers, A/D converters, etc. The PIC32MX SPI
module is compatible with Motorola® SPI and SIOP
interfaces.
Following are some of the key features of this module:
• Master and Slave Modes Support
• Four Different Clock Formats
• Framed SPI Protocol Support
• User Configurable 8-bit, 16-bit and 32-bit Data
Width
• Separate SPI Data Registers for Receive and
Transmit
• Programmable Interrupt Event on every 8-bit,
16-bit and 32-bit Data Transfer
• Operation during CPU Sleep and Idle Mode
• Fast Bit Manipulation using CLR, SET and INV
Registers
FIGURE 17-1:
SPI MODULE BLOCK DIAGRAM
Internal
Data Bus
Read
SPIxBUF
Write
SPIxRXB
SPIxTXB
Transmit
Registers share address SPIxBUF
SDIx
SDOx
SSx/FSYNC
Receive
SPIxSR
bit 0
Slave Select
and Frame
Sync Control
Shift
Control
Clock
Control
Edge
Select
SCKx
Note: Access SPIxTXB and SPIxRXB registers via SPIxBUF register.
Baud Rate
Generator
PBCLK
Enable Master Clock
© 2010 Microchip Technology Inc.
DS61143G-page 111