Main Content

I2C Interface Overview

I2C, or Inter-Integrated Circuit, is a chip-to-chip protocol supporting two-wire communication. An aardvark or ni845x object represents a connection between MATLAB® and an I2C controller board.

  • An aardvark object represents a connection to a Total Phase® Aardvark I2C/SPI™ Host Adapter.

  • An ni845x object represents a connection to an NI™ USB-8451 or USB-8452 I2C/SPI Interface Device.

These are the only two controller boards supported for I2C communication in MATLAB.

The Aardvark™ or NI USB-845x controller board can have one or more I2C peripheral devices or sensor chips connected to it. A device object represents a connection between MATLAB and the peripheral device. MATLAB can send commands to the controller board as well as the I2C peripheral device. The aardvark and ni845x objects in MATLAB always have the I2C controller role and cannot be used in the peripheral role.

Some applications of the I2C interface include communication with SPD EEPROM and NVRAM chips, communication with SMBus devices, controlling accelerometers, accessing low-speed DACs and ADCs, changing settings on color monitors using the display data channel, changing sound volume in intelligent speakers, reading hardware monitors and diagnostic sensors, visualizing data sent from an I2C sensor, and turning on or off the power supply of system components.

You must have the Total Phase Aardvark or NI-845x drivers installed to use the aardvark or ni845x interface. These interfaces are only supported on 64-bit Windows® platforms. For more information, see the following.

Identify and discover controller boards and peripheral devices using the following functions.

Configure and communicate with the digital I/O pins on the controller board using the following functions.

Communicate with I2C peripheral devices using the following functions.

See Also

| |

Related Topics