I2Cdevlib

I2C device library collection for AVR/Arduino or other C++-based MCUs

Public Member Functions | Static Public Member Functions | Static Public Attributes
I2Cdev Class Reference

Public Member Functions

  I2Cdev ()

Static Public Member Functions

static int8_t  readBit (uint8_t devAddr, uint8_t regAddr, uint8_t bitNum, uint8_t *data, uint16_t timeout=I2Cdev::readTimeout)
static int8_t  readBitW (uint8_t devAddr, uint8_t regAddr, uint8_t bitNum, uint16_t *data, uint16_t timeout=I2Cdev::readTimeout)
static int8_t  readBits (uint8_t devAddr, uint8_t regAddr, uint8_t bitStart, uint8_t length, uint8_t *data, uint16_t timeout=I2Cdev::readTimeout)
static int8_t  readBitsW (uint8_t devAddr, uint8_t regAddr, uint8_t bitStart, uint8_t length, uint16_t *data, uint16_t timeout=I2Cdev::readTimeout)
static int8_t  readByte (uint8_t devAddr, uint8_t regAddr, uint8_t *data, uint16_t timeout=I2Cdev::readTimeout)
static int8_t  readWord (uint8_t devAddr, uint8_t regAddr, uint16_t *data, uint16_t timeout=I2Cdev::readTimeout)
static int8_t  readBytes (uint8_t devAddr, uint8_t regAddr, uint8_t length, uint8_t *data, uint16_t timeout=I2Cdev::readTimeout)
static int8_t  readWords (uint8_t devAddr, uint8_t regAddr, uint8_t length, uint16_t *data, uint16_t timeout=I2Cdev::readTimeout)
static bool  writeBit (uint8_t devAddr, uint8_t regAddr, uint8_t bitNum, uint8_t data)
static bool  writeBitW (uint8_t devAddr, uint8_t regAddr, uint8_t bitNum, uint16_t data)
static bool  writeBits (uint8_t devAddr, uint8_t regAddr, uint8_t bitStart, uint8_t length, uint8_t data)
static bool  writeBitsW (uint8_t devAddr, uint8_t regAddr, uint8_t bitStart, uint8_t length, uint16_t data)
static bool  writeByte (uint8_t devAddr, uint8_t regAddr, uint8_t data)
static bool  writeWord (uint8_t devAddr, uint8_t regAddr, uint16_t data)
static bool  writeBytes (uint8_t devAddr, uint8_t regAddr, uint8_t length, uint8_t *data)
static bool  writeWords (uint8_t devAddr, uint8_t regAddr, uint8_t length, uint16_t *data)

Static Public Attributes

static uint16_t  readTimeout = I2CDEV_DEFAULT_READ_TIMEOUT

Constructor & Destructor Documentation

I2Cdev::I2Cdev ( )

Default constructor.


Member Function Documentation

int8_t I2Cdev::readBit ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  bitNum,
uint8_t *  data,
uint16_t  timeout = I2Cdev::readTimeout  
) [static]

Read a single bit from an 8-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register regAddr to read from
bitNum Bit position to read (0-7)
data Container for single bit value
timeout Optional read timeout in milliseconds (0 to disable, leave off to use default class value in I2Cdev::readTimeout)
Returns:
Status of read operation (true = success)
int8_t I2Cdev::readBits ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  bitStart,
uint8_t  length,
uint8_t *  data,
uint16_t  timeout = I2Cdev::readTimeout  
) [static]

Read multiple bits from an 8-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register regAddr to read from
bitStart First bit position to read (0-7)
length Number of bits to read (not more than 8)
data Container for right-aligned value (i.e. '101' read from any bitStart position will equal 0x05)
timeout Optional read timeout in milliseconds (0 to disable, leave off to use default class value in I2Cdev::readTimeout)
Returns:
Status of read operation (true = success)
int8_t I2Cdev::readBitsW ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  bitStart,
uint8_t  length,
uint16_t *  data,
uint16_t  timeout = I2Cdev::readTimeout  
) [static]

Read multiple bits from a 16-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register regAddr to read from
bitStart First bit position to read (0-15)
length Number of bits to read (not more than 16)
data Container for right-aligned value (i.e. '101' read from any bitStart position will equal 0x05)
timeout Optional read timeout in milliseconds (0 to disable, leave off to use default class value in I2Cdev::readTimeout)
Returns:
Status of read operation (1 = success, 0 = failure, -1 = timeout)
int8_t I2Cdev::readBitW ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  bitNum,
uint16_t *  data,
uint16_t  timeout = I2Cdev::readTimeout  
) [static]

Read a single bit from a 16-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register regAddr to read from
bitNum Bit position to read (0-15)
data Container for single bit value
timeout Optional read timeout in milliseconds (0 to disable, leave off to use default class value in I2Cdev::readTimeout)
Returns:
Status of read operation (true = success)
int8_t I2Cdev::readByte ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t *  data,
uint16_t  timeout = I2Cdev::readTimeout  
) [static]

Read single byte from an 8-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register regAddr to read from
data Container for byte value read from device
timeout Optional read timeout in milliseconds (0 to disable, leave off to use default class value in I2Cdev::readTimeout)
Returns:
Status of read operation (true = success)
int8_t I2Cdev::readBytes ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  length,
uint8_t *  data,
uint16_t  timeout = I2Cdev::readTimeout  
) [static]

Read multiple bytes from an 8-bit device register.

Parameters:
devAddr I2C slave device address
regAddr First register regAddr to read from
length Number of bytes to read
data Buffer to store read data in
timeout Optional read timeout in milliseconds (0 to disable, leave off to use default class value in I2Cdev::readTimeout)
Returns:
Number of bytes read (0 indicates failure)
int8_t I2Cdev::readWord ( uint8_t  devAddr,
uint8_t  regAddr,
uint16_t *  data,
uint16_t  timeout = I2Cdev::readTimeout  
) [static]

Read single word from a 16-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register regAddr to read from
data Container for word value read from device
timeout Optional read timeout in milliseconds (0 to disable, leave off to use default class value in I2Cdev::readTimeout)
Returns:
Status of read operation (true = success)
int8_t I2Cdev::readWords ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  length,
uint16_t *  data,
uint16_t  timeout = I2Cdev::readTimeout  
) [static]

Read multiple words from a 16-bit device register.

Parameters:
devAddr I2C slave device address
regAddr First register regAddr to read from
length Number of words to read
data Buffer to store read data in
timeout Optional read timeout in milliseconds (0 to disable, leave off to use default class value in I2Cdev::readTimeout)
Returns:
Number of words read (0 indicates failure)
bool I2Cdev::writeBit ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  bitNum,
uint8_t  data 
) [static]

write a single bit in an 8-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register regAddr to write to
bitNum Bit position to write (0-7)
value New bit value to write
Returns:
Status of operation (true = success)
bool I2Cdev::writeBits ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  bitStart,
uint8_t  length,
uint8_t  data 
) [static]

Write multiple bits in an 8-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register regAddr to write to
bitStart First bit position to write (0-7)
length Number of bits to write (not more than 8)
data Right-aligned value to write
Returns:
Status of operation (true = success)
bool I2Cdev::writeBitsW ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  bitStart,
uint8_t  length,
uint16_t  data 
) [static]

Write multiple bits in a 16-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register regAddr to write to
bitStart First bit position to write (0-15)
length Number of bits to write (not more than 16)
data Right-aligned value to write
Returns:
Status of operation (true = success)
bool I2Cdev::writeBitW ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  bitNum,
uint16_t  data 
) [static]

write a single bit in a 16-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register regAddr to write to
bitNum Bit position to write (0-15)
value New bit value to write
Returns:
Status of operation (true = success)
bool I2Cdev::writeByte ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  data 
) [static]

Write single byte to an 8-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register address to write to
data New byte value to write
Returns:
Status of operation (true = success)
bool I2Cdev::writeBytes ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  length,
uint8_t *  data 
) [static]

Write multiple bytes to an 8-bit device register.

Parameters:
devAddr I2C slave device address
regAddr First register address to write to
length Number of bytes to write
data Buffer to copy new data from
Returns:
Status of operation (true = success)
bool I2Cdev::writeWord ( uint8_t  devAddr,
uint8_t  regAddr,
uint16_t  data 
) [static]

Write single word to a 16-bit device register.

Parameters:
devAddr I2C slave device address
regAddr Register address to write to
data New word value to write
Returns:
Status of operation (true = success)
bool I2Cdev::writeWords ( uint8_t  devAddr,
uint8_t  regAddr,
uint8_t  length,
uint16_t *  data 
) [static]

Write multiple words to a 16-bit device register.

Parameters:
devAddr I2C slave device address
regAddr First register address to write to
length Number of words to write
data Buffer to copy new data from
Returns:
Status of operation (true = success)

Field Documentation

uint16_t I2Cdev::readTimeout = I2CDEV_DEFAULT_READ_TIMEOUT [static]

Default timeout value for read operations. Set this to 0 to disable timeout detection.


The documentation for this class was generated from the following files:
[フレーム]

Generated on Sun Nov 13 2011 21:37:27 for I2Cdevlib by doxygen 1.7.4

AltStyle によって変換されたページ (->オリジナル) /