59 int tx(
const uint8_t *data, uint16_t size,
bool stop =
true );
67 int rx( uint8_t *data, uint16_t size );
76 int reg_w( uint8_t reg_adr,
const uint8_t *data, uint16_t size );
85 int reg_w( uint8_t reg_adr, uint8_t data );
94 int reg_r( uint8_t reg_adr, uint8_t *data, uint16_t size );
103 uint8_t
reg_r( uint8_t reg_adr );
110 void write_r8( uint8_t reg, uint8_t val );
119 void write_r16( uint8_t reg, uint16_t val );
126 uint8_t
read_r8( uint8_t reg );
145 void bit_op8( uint8_t reg, uint8_t mask, uint8_t value );
146 void bit_op16( uint8_t reg, uint16_t mask, uint16_t value );
153 static bool ping( uint8_t addr );
157 static void scan( TwoWire& target_i2c = Wire, uint8_t stop = 128 );