mraa
2.0.0
Low Level Skeleton Library for Communication on GNU/Linux platforms
|
An I2c object represents an i2c master and can talk multiple i2c slaves by selecting the correct address It is considered best practice to make sure the address is correct before doing any calls on i2c, in case another application or even thread changed the addres on that bus. Multiple instances of the same bus can exist.
Public Member Functions | |
synchronized void | delete () |
I2c (int bus, boolean raw) | |
I2c (int bus) | |
Result | frequency (I2cMode mode) |
Result | address (short address) |
short | readByte () |
int | read (byte[] data) |
short | readReg (short reg) |
int | readWordReg (short reg) |
int | readBytesReg (short reg, byte[] data) |
Result | writeByte (short data) |
Result | write (byte[] data) |
Result | writeReg (short reg, short data) |
Result | writeWordReg (short reg, int data) |
I2c | ( | int | bus, |
boolean | raw | ||
) |
Instantiates an i2c bus. Multiple instances of the same bus can exist and the bus is not guaranteed to be on the correct address before read/write.
bus | The i2c bus to use |
raw | Whether to disable pinmapper for your board |
I2c | ( | int | bus | ) |
I2C constructor, takes a pointer to a I2C context and initialises the I2C class
i2c_context | void * to an I2C context |
Result address | ( | short | address | ) |
Set the slave to talk to, typically called before every read/write operation
address | Communicate to the i2c slave on this address |
Sets the i2c Frequency for communication. Your board may not support the set frequency. Anyone can change this at any time and this will affect every slave on the bus
mode | Frequency to set the bus to |
short readByte | ( | ) |
Read exactly one byte from the bus
std::invalid_argument | in case of error |
short readReg | ( | short | reg | ) |
Read byte from an i2c register
reg | Register to read from |
std::invalid_argument | in case of error |
int readWordReg | ( | short | reg | ) |
Read word from an i2c register
reg | Register to read from |
std::invalid_argument | in case of error |
Result writeByte | ( | short | data | ) |
Result writeReg | ( | short | reg, |
short | data | ||
) |
Write a byte to an i2c register
reg | Register to write to |
data | Value to write to register |
Result writeWordReg | ( | short | reg, |
int | data | ||
) |
Write a word to an i2c register
reg | Register to write to |
data | Value to write to register |