我需要使用HAL_I2C_Master_Transmit和HAL_I2C_Master_Receive来写入I2C设备,但我完全不知道如何操作。我有以下函数需要处理:
void write8(uint8_t reg, uint32_t value)
read8(uint8_t reg)
目前这些函数在Arduino库中如下所示:
void Adafruit_TCS34725::write8(uint8_t reg, uint32_t value) {
uint8_t buffer[2] = {TCS34725_COMMAND_BIT | reg, value & 0xFF};
i2c_dev->write(buffer, 2);
}
uint8_t Adafruit_TCS34725::read8(uint8_t reg) {
uint8_t buffer[1] = {TCS34725_COMMAND_BIT | reg};
i2c_dev->write_then_read(buffer, 1, buffer, 1);
return buffer[0];
}
|