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.