I2C_ReadBurst

The function I2C_ReadBurst reads a number of iNumberBytes from a i2c-device specified with uSlaveAddress.

int I2C_ReadBurst( UCHAR uSlaveAddress, UCHAR* pBuffer, UCHAR ucOffset, WORD iNumberBytes ); int i2c_BurstRead( UCHAR uSlaveAddress, UCHAR* pBuffer, UCHAR ucOffset, WORD iNumberBytes );

Parameters

uSlaveAddress
Slave-Address of the i2c-device.

pBuffer
Buffer to receive data.

ucOffset
Offset at where to begin with data-read. This is also the offset, where data will be written to pBuffer.

iNumberBytes
Number of bytes to read.

Return Values

Returns 0 if succesful.

Remarks

Issues following sequence:

  • Lock

  • Start

  • SlaveAddress with write-bit

  • ucOffset

  • SlaveAddress with read-bit

  • Read specified number of bytes

  • Stop

  • Unlock

This function calls I2C_Lock and I2C_Unlock to prevent multiple accesses to the i2c-bus. Don't lock access to i2c-bus prior to using this function!!

Requirements

OS Versions: Windows CE 4.2 and later.
Header: drvlib_app.h
Link Library: drvlib_app.lib.

See Also

I2C_ReadBurstAll