mirror of https://github.com/sqfmi/Watchy.git
18 lines
523 B
C
18 lines
523 B
C
|
#include <Wire.h>
|
||
|
|
||
|
class I2CBus
|
||
|
{
|
||
|
public:
|
||
|
I2CBus(TwoWire &port = Wire, int sda = 21, int scl = 22)
|
||
|
{
|
||
|
_port = &port;
|
||
|
_port->begin(sda, scl);
|
||
|
};
|
||
|
void scan();
|
||
|
uint16_t readBytes(uint8_t addr, uint8_t *data, uint16_t len, uint16_t delay_ms = 0);
|
||
|
uint16_t readBytes(uint8_t addr, uint8_t reg, uint8_t *data, uint16_t len);
|
||
|
uint16_t writeBytes(uint8_t addr, uint8_t reg, uint8_t *data, uint16_t len);
|
||
|
bool deviceProbe(uint8_t addr);
|
||
|
private:
|
||
|
TwoWire *_port;
|
||
|
};
|