Unit content
SPI synchronous serial communication
The Serial Peripheral Interface (SPI) moves bits synchronously using a clock generated by a controller.
A typical bus uses:
- SCLK for the serial clock;
- one data line from controller to peripheral;
- one data line from peripheral to controller;
- a chip-select signal that chooses which peripheral is active.
On each clock edge, the participants shift bits according to an agreed clock polarity and phase. Different combinations of these choices are commonly called SPI modes.
SPI does not define universal device addressing or message meaning. A particular sensor, memory or converter defines its own command and register protocol on top of the bit transfer.
Separate data directions allow full-duplex transfer, although many devices use one direction at a time. Additional peripherals usually require additional chip-select signals or external selection logic.
SPI favors simple, fast board-level communication at the cost of more wires and less built-in bus coordination than addressed serial buses.