Skip to main content

i2c_master_multi_buffer_transmit

Function i2c_master_multi_buffer_transmit 

Source
pub unsafe extern "C" fn i2c_master_multi_buffer_transmit(
    i2c_dev: *mut i2c_master_dev_t,
    buffer_info_array: *mut i2c_master_transmit_multi_buffer_info_t,
    array_size: usize,
    xfer_timeout_ms: i32,
) -> i32
Expand description

@brief Transmit multiple buffers of data over an I2C bus.

This function transmits multiple buffers of data over an I2C bus using the specified I2C master device handle. It takes in an array of buffer information structures along with the size of the array and a transfer timeout value in milliseconds.

@param i2c_dev I2C master device handle that created by i2c_master_bus_add_device. @param buffer_info_array Pointer to buffer information array. @param array_size size of buffer information array. @param xfer_timeout_ms Wait timeout, in ms. Note: -1 means wait forever.

@return - ESP_OK: I2C master transmit success - ESP_ERR_INVALID_ARG: I2C master transmit parameter invalid. - ESP_ERR_TIMEOUT: Operation timeout(larger than xfer_timeout_ms) because the bus is busy or hardware crash.