Main Content

write

Write data to I2C bus

Add-On Required: This feature requires the MATLAB Support Package for Arduino Hardware add-on.

Description

example

write(dev,dataIn) writes data to the I2C bus.

example

write(dev,dataIn,precision) also specifies the precision.

Examples

collapse all

Create a connection to an I2C device on Arduino hardware.

a = arduino('COM9','Uno','Libraries','I2C');
Updating server code on board Uno (COM9). This may take a few minutes.

Use an address to create the I2C device connection.

dev = device(a,'I2CAddress','0x55');

Write data to the I2C device.

dataIn = [0 1 2 3 4 5];
write(dev,dataIn);

Create a connection to an I2C device on Arduino hardware.

a = arduino('COM9','Uno','Libraries','I2C');

Use an address to create the I2C device connection.

dev = device(a,'I2CAddress','0x55');

Write data to the I2C device with the precision of uint16.

dataIn = [0 500];
write(dev,dataIn,'uint16');

Input Arguments

collapse all

I2C device connection specified as a device object.

Data to write to the I2C device, specified as a scalar, vector, hexadecimal or binary. The range of the values in the array is based on the precision.

Data precision, specified as one of the following character vectors:

  • 'uint8'

  • 'int8'

  • 'uint16'

  • 'int16'

  • 'uint32'

  • 'int32'

  • 'uint64'

  • 'int64'

Data can be also be specified in the following formats:

  • hexadecimal

  • binary

  • char

  • string

More About

collapse all

Code Generation Using MATLAB Function Block

  • Use write in a MATLAB® Function block with the Simulink® Support Package for Arduino® Hardware to generate code that can be deployed on Arduino Hardware.

  • Values of dataIn is not validated against the precision. The dataIn values will be saturated when it goes beyond the range of the specified precision.

Version History

Introduced in R2014b