Turn-key PCB assembly services in prototype quantities or low-volume to mid-volume production runs

Connecting multiple I2C devices on a common bus

I2C communication protocol is so popular today that you can buy varieties of I2C compatible devices in the form of temperature sensors, serial EEPROMs, real-time clocks, LCD drivers, port expander, and so on. While most modern microcontrollers do have built-in I2C communication port, it’s implementation requires a good understanding of the protocol in general, its signal types, and an addressing scheme for uniquely identifying multiple devices on a common I2C bus. Embedded Lab’s new tutorial on I2C communication covers all the detail that is required for connecting multiple devices on a common I2C bus. The tutorial uses PIC18F2550 microcontroller, to which are connected three I2C compatible devices: 2 EEPROMs (24LC512) and 1 temperature sensor (DS1631). In the experiment, the microcontroller receives the temperature readings from DS1631 sensor and stores them in to the two EEPROMs. Later, the readings are retrieved from the EEPROMs and displayed on a LCD screen. The author has put a significant effort in covering both the theory and its implementation in one article. Continue reading