![Arduino wire library address](https://cdn1.cdnme.se/5447227/9-3/26_64e61dfee087c31b15931424.png)
![arduino wire library address arduino wire library address](https://1.bp.blogspot.com/-0Quys-EXmxI/Xg3tyoSe3NI/AAAAAAAAN9E/Qx1OVpZqXdohurgHf-49mnM78mHnXUyNwCEwYBhgL/s1600/IMG_20200102_182148.jpg)
![arduino wire library address arduino wire library address](https://arduinogetstarted.com/images/tutorial/arduino-multiple-led-wiring-diagram.jpg)
On a two-wire bus, hundreds of master and slave devices can communicate serial data using the I2C protocol. The I2C bus has only two wires: one is a data line (SDA) and one is a clock line (SCL). The I2C, or TWI, is a synchronous master-slave serial communication protocol originally developed by Philips Semiconductors (which is now NXP). Now, in this tutorial, we’ll learn about synchronous serial communication in Arduino using the inter-integrated circuit (I2C) bus. SPI bus is used for full-duplex synchronous serial communication with multiple devices. The I2C or two-wire interface (TWI) is used for half-duplex synchronous serial communication with multiple devices in a master-slave fashion. UART is useful for full-duplex serial communication with a single device over two wires. The universal asynchronous receiver/transmitter (UART), I2C, and SPI are the most commonly used serial interfaces in embedded systems.
![arduino wire library address arduino wire library address](https://www.14core.com/wp-content/uploads/2015/06/Lesson12.jpg)
In previous tutorials, we’ve covered serial communication using the UART and software serial in Arduino.
![Arduino wire library address](https://cdn1.cdnme.se/5447227/9-3/26_64e61dfee087c31b15931424.png)