Main Content

readRegister

Read data from I2C device register

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

Description

example

out = readRegister(dev,register) returns data read from the I2C device register.

example

out = readRegister(dev,register,precision) also specifies the data precision.

Examples

collapse all

Create an Arduino object and attach an I2C device object to it.

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

Use an address to create the I2C device connection.

dev = device(a,'I2CAddress','0x55')
dev = 
  device with properties:

             Interface: 'I2C'
            I2CAddress: 85 ('0x55')
                   Bus: 0
                SCLPin: 'A5'
                SDAPin: 'A4'
               BitRate: 100000 (bits/s)

Show functions

Write value 10 to the I2C device register at address 20.

writeRegister(dev,20,10);

Read from the I2C device register at address 20.

value = readRegister(dev,20)
value = 10

Create an Arduino object and attach an I2C device object to it.

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

Use an address to create the I2C device connection.

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

Write value 224 to the I2C device register at address 20 with the precision of uint16

writeRegister(dev, 20, 224,'uint16');

Read from the I2C device register at address 20 with the precision of uint16.

value = readRegister(dev,20,'uint16')
value = 224

Input Arguments

collapse all

I2C device connection, specified as a device object.

Address of the I2C device register, specified as a scalar integer, hexadecimal, or binary from 0 through 255.

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

  • 'uint8'

  • 'int8'

  • 'uint16'

  • 'int16'

  • 'uint32'

  • 'int32'

  • 'uint64'

  • 'int64'

Output Arguments

collapse all

Value of data stored at the I2C device register, returned as a scalar or vector based on the precision.

More About

collapse all

Code Generation Using MATLAB Function Block

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

Version History

Introduced in R2014b