Using devices with the I2C bus

Raspberry Pi can support several higher-level protocols that a wide range of devices can easily be connected to. In this chapter, we shall focus on the most common bus, called I-squared-C (I2C). It provides a medium-speed bus for communicating with devices over two wires. In this section, we shall use I2C to interface with an 8-bit ADC. This device will measure an analog signal, convert it to a relative value between 0 and 255, and send the value as a digital signal (represented by 8-bits) over the I2C bus to the Raspberry Pi.

The advantages of I2C can be summarized as follows:

  • Maintains a low pin/signal count, even with numerous devices on the bus
  • Adapts to the needs of different slave devices
  • Readily supports ...

Get Raspberry Pi 3 Cookbook for Python Programmers - Third Edition 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.