5.6.2 Serial Peripheral Interface (SPI)

AVR and PIC32CM MCUs provide SPI peripherals that feature high-speed, full-duplex, synchronous data transfer between microcontrollers and other devices. Both SPIs support Host and Client modes, allowing communication with a wide range of external devices. Table 5-23 shows a comparison of features between AVR and PIC32CM.

Table 5-23. AVR® and PIC32CM SPI Features
FeatureAVR® SPIPIC32CM SPI (SERCOM)
IntegrationStand-alone SPI peripheralMode in SERCOM (Serial Communications) peripheral
Data BufferingTX/RX buffers, Shift registersOne-level TX buffer, Two-level RX buffer, internal FIFO
Host/Client SupportSupportedSupported
Bit Rate/Clock SpeedUp to 20 MHz Up to 24 MHz
SPI Modes SupportedAll four SPI modesAll four SPI modes
Data OrderLSb or MSb firstLSb or MSb first
DMA Support

Client mode (XMEGA® only)

Supported
Framed SPI/FSYNCN/AHardware-controlled FSYNC
0-bit ExtensionN/ASupported
Wake-up from IdleSupportedSupported
Write Collision ProtectionSupportedSupported
InterruptsSupportedSupported
Pin MappingFixedFlexible