Main Menu

search

You are here

SPI vs. i2C:

[last updated: 2025-05-12]
SPI home page
i2c home page
excellent summary: https://www.prodigytechno.com/i2c-vs-spi
----------------------------------------------------------

  • from link above:
      ● I2C is half-duplex communication and SPI is full-duplex communication.
      ● I2C supports multi-master and multi-slave and SPI supports single-master.
      ● I2C is a two-wire protocol and SPI is a four-wire protocol.
      ● I2C supports clock stretching and SPI does not have clock stretching.
      ● I2C is slower than SPI.
      ● I2C has an extra overhead start and stop bits and SPI does not have any start and stop bits.
      ● I2C has an acknowledgment bit after every byte of transfer.
      ● I2C has a pullup resistor requirement.


      ● I2C has easy addition of new devices: Just add the new slave device (with its unique address) to the bus.
      ● SPI adding a new device requires wiring a new SS line.


      ● SPI can support up to 10MB/s.
      ● I2C can only support 5MB/s, and that only in the ultra-fast mode.

    ----------------------------------------------------------

  • ----------------------------------------------------------

  • ----------------------------------------------------------

.



.


.
eof