I2C vs SPI Comparison PDF
Document Details
Tags
Summary
This document compares and contrasts two common communication protocols, I2C and SPI. It outlines their features, advantages, disadvantages, and applications. The comparison includes aspects such as speed, power consumption, noise susceptibility, and clock stretching.
Full Transcript
I2C SPI SPI can be multi-slave but does not a multi-master serial protocol, that means there can be...
I2C SPI SPI can be multi-slave but does not a multi-master serial protocol, that means there can be only I2C can be multi-master and multi-slave, which means there can be more than one master and one master attached to SPI bus. slave attached to the I2C bus I2C is half-duplex communication protocol. SPI is a full duplex commination protocol. I2C has the feature of clock stretching, that means if the slave cannot able to send fast data as Clock stretching is not the feature of SPI. fast enough then it suppresses the clock to stop the communication. I2C is used only two wire for the communication, one wire is used for the data and the second SPI needs three or four wire for communication ((depends on requirement), MOSI, MISO, SCL wire is used for the clock. and Chip-select pin. I2C is slower than SPI. In comparison to I2C, SPI is faster. I2C draws more power than SPI. Draws less power as compared to I2C. SPI is more susceptible to noise than I2C. I2C is less susceptible to noise than SPI I2C is cheaper to implement than the SPI communication protocol. Costly as compare to I2C. I2C work on wire and logic and it has a pull-up resistor. There is no requirement of pull-up resistor in case of the SPI. In I2C communication we get the acknowledgment bit after each byte. Acknowledgment bit is not supported by the SPI communication protocol. I2C ensures that data sent is received by the slave device. SPI does not verify that data is received correctly or not. I2C support the multi-master communication. SPI does not support multi -master communication. SPI is not a multi-master communication protocol, so it does not consist the properties of I2C is a multi-master communication protocol that’s why it has the feature of arbitration. arbitration. I2C is the address base bus protocol, you have to send the address of the slave for the In case of the SPI, you have to select the slave using the slave select pin for the communication. communication. SPI does not have a start and stop bits. I2C has some extra overhead due to start and stop bits. I2C supports multiple devices on the same bus without any additional select lines (work on the SPI requires additional signal (slave select lines) lines to manage multiple devices on the same basis of device address). bus. I2C is better for long distance. SPI is better for the short distance. I2C is developed by NXP. SPI is developed by Motorola.