Function esp_idf_svc::sys::i2c_master_read_from_device
source · pub unsafe extern "C" fn i2c_master_read_from_device(
i2c_num: u32,
device_address: u8,
read_buffer: *mut u8,
read_size: usize,
ticks_to_wait: u32,
) -> i32
Expand description
@brief Perform a read to a device connected to a particular I2C port.
This function is a wrapper to i2c_master_start()
, i2c_master_write()
, i2c_master_read()
, etc…
It shall only be called in I2C master mode.
@param i2c_num I2C port number to perform the transfer on @param device_address I2C device’s 7-bit address @param read_buffer Buffer to store the bytes received on the bus @param read_size Size, in bytes, of the read buffer @param ticks_to_wait Maximum ticks to wait before issuing a timeout.
@return - ESP_OK Success - ESP_ERR_INVALID_ARG Parameter error - ESP_FAIL Sending command error, slave hasn’t ACK the transfer. - ESP_ERR_INVALID_STATE I2C driver not installed or not in master mode. - ESP_ERR_TIMEOUT Operation timeout because the bus is busy.