Chapter 17. Data Buses

In this chapter you will

  • Learn about the I2C bus

  • Understand how to use an EEPROM (electrically erasable read-only memory) and a port expander on the I2C bus

  • Learn about the SPI bus

  • Learn how to use a digital rheostat on the SPI bus

An Arduino communicates with other devices via a data bus, a system of connections that allow two or more devices to exchange data in an orderly manner. A data bus can provide a connection between the Arduino and various sensors, I/O expansion devices, and other components.

The two major buses of most importance to the Arduino are the Serial Peripheral Interface (SPI) bus and the Inter-Integrated Circuit bus (I2C). Many useful sensors and external devices communicate using these buses.

The I2C Bus

The ...

Get Arduino Workshop now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.