53 uint8_t buf[1] = {reg};
54 size_t bytes_sent = 0;
58 if (bytes_sent != 1) {
100 uint8_t buf[2] = {(uint8_t)((reg >> 8) & 0xFF), (uint8_t)(reg & 0xFF)};
101 size_t bytes_sent = 0;
105 if (bytes_sent != 2) {
110 memset(buf, 0x00, 2);
147 uint8_t buf[2] = {reg, 0x00};
148 size_t bytes_sent = 0;
152 if (bytes_sent != 1) {
157 memset(buf, 0x00, 2);
164 return (uint16_t)((buf[0] << 8 )| buf[1]);
194 uint8_t buf[2] = {(uint8_t)((reg >> 8) & 0xFF), (uint8_t)(reg & 0xFF)};
195 size_t bytes_sent = 0;
199 if (bytes_sent != 2) {
204 memset(buf, 0x00, 2);
211 return (uint16_t)((buf[0] << 8 )| buf[1]);
237 uint8_t buf[2] = {reg, data};
238 size_t bytes_sent = 0;
242 if (bytes_sent == 0) {
244 }
else if (bytes_sent < 2) {
275 uint8_t buf[3] = {(uint8_t)((reg >> 8) & 0xFF), (uint8_t)(reg & 0xFF), (uint8_t)(data)};
276 size_t bytes_sent = 0;
280 if (bytes_sent == 0) {
282 }
else if (bytes_sent < 3) {
313 uint8_t buf[3] = {(uint8_t)(reg), (uint8_t)((data >> 8) & 0xFF), (uint8_t)(data & 0xFF)};
314 size_t bytes_sent = 0;
318 if (bytes_sent == 0) {
320 }
else if (bytes_sent < 3) {
351 uint8_t buf[4] = {(uint8_t)((reg >> 8) & 0xFF), (uint8_t)(reg & 0xFF),
352 (uint8_t)((data >> 8) & 0xFF), (uint8_t)(data & 0xFF)};
353 size_t bytes_sent = 0;
357 if (bytes_sent == 0) {
359 }
else if (bytes_sent < 4) {
i2c_res_t
Definition: i2c.h:21
i2c_res_t i2c_master_write(i2c_master_t *ctx, uint8_t device_addr, uint8_t buf[], size_t n, size_t *num_bytes_sent, int send_stop_bit)
void i2c_master_stop_bit_send(i2c_master_t *ctx)
i2c_res_t i2c_master_read(i2c_master_t *ctx, uint8_t device_addr, uint8_t buf[], size_t n, int send_stop_bit)
@ I2C_NACK
Definition: i2c.h:22
uint8_t read_reg(i2c_master_t *ctx, uint8_t device_addr, uint8_t reg, i2c_regop_res_t *result)
Definition: i2c_reg.h:47
i2c_regop_res_t write_reg(i2c_master_t *ctx, uint8_t device_addr, uint8_t reg, uint8_t data)
Definition: i2c_reg.h:231
i2c_regop_res_t write_reg8_addr16(i2c_master_t *ctx, uint8_t device_addr, uint16_t reg, uint8_t data)
Definition: i2c_reg.h:269
i2c_regop_res_t write_reg16_addr8(i2c_master_t *ctx, uint8_t device_addr, uint8_t reg, uint16_t data)
Definition: i2c_reg.h:307
i2c_regop_res_t write_reg16(i2c_master_t *ctx, uint8_t device_addr, uint16_t reg, uint16_t data)
Definition: i2c_reg.h:345
uint16_t read_reg16(i2c_master_t *ctx, uint8_t device_addr, uint16_t reg, i2c_regop_res_t *result)
Definition: i2c_reg.h:188
uint8_t read_reg8_addr16(i2c_master_t *ctx, uint8_t device_addr, uint16_t reg, i2c_regop_res_t *result)
Definition: i2c_reg.h:94
i2c_regop_res_t
Definition: i2c_reg.h:20
uint16_t read_reg16_addr8(i2c_master_t *ctx, uint8_t device_addr, uint8_t reg, i2c_regop_res_t *result)
Definition: i2c_reg.h:141
@ I2C_REGOP_INCOMPLETE
Definition: i2c_reg.h:23
@ I2C_REGOP_DEVICE_NACK
Definition: i2c_reg.h:22
@ I2C_REGOP_SUCCESS
Definition: i2c_reg.h:21