Book Image

Raspberry Pi Essentials

By : Jack Creasey
Book Image

Raspberry Pi Essentials

By: Jack Creasey

Overview of this book

Table of Contents (15 chapters)
Raspberry Pi Essentials
Credits
About the Author
About the Reviewers
www.PacktPub.com
Preface
Index

Getting started with I2C


The specifications for both I2C and SMBus are quite complex. For more in-depth documentation on the differences between I2C and SMBus, refer to the following resources:

The I2C bus is a shared-media multi-drop architecture with only two lines: (1) serial data (SDA) and (2) serial clock (SCL)—not including the ground. The bus is in a quiescent state when no transactions are being sent or received and both the SDA and SCL lines are pulled high by resistors to 3.3V in the Pi (or 5V in other implementations). The master and slave devices only ever pull the data line low, which is described as a wired OR connection. The following diagram shows the general I2C architecture and its location on the Pi I/O connector. Pins 3 and 5 can also be used as GPIO ports but not while you have I2C enabled, so you lose two GPIO ports.

At the protocol level, I2C is similar in concept to the RS232 serial...