|  | MCUXpresso SDK API Reference Manual
    Rev. 0
    NXP Semiconductors | 
| Data Structures | |
| struct | i2c_rtos_handle_t | 
| I2C FreeRTOS handle.  More... | |
| Driver version | |
| #define | FSL_I2C_FREERTOS_DRIVER_VERSION (MAKE_VERSION(2, 0, 3)) | 
| I2C freertos driver version 2.0.3.  More... | |
| I2C RTOS Operation | |
| status_t | I2C_RTOS_Init (i2c_rtos_handle_t *handle, I2C_Type *base, const i2c_master_config_t *masterConfig, uint32_t srcClock_Hz) | 
| Initializes I2C.  More... | |
| status_t | I2C_RTOS_Deinit (i2c_rtos_handle_t *handle) | 
| Deinitializes the I2C.  More... | |
| status_t | I2C_RTOS_Transfer (i2c_rtos_handle_t *handle, i2c_master_transfer_t *transfer) | 
| Performs I2C transfer.  More... | |
| struct i2c_rtos_handle_t | 
| Data Fields | |
| I2C_Type * | base | 
| I2C base address. | |
| i2c_master_handle_t | drv_handle | 
| A handle of the underlying driver, treated as opaque by the RTOS layer. | |
| status_t | async_status | 
| Transactional state of the underlying driver. | |
| SemaphoreHandle_t | mutex | 
| A mutex to lock the handle during a transfer. | |
| SemaphoreHandle_t | semaphore | 
| A semaphore to notify and unblock task when the transfer ends. | |
| #define FSL_I2C_FREERTOS_DRIVER_VERSION (MAKE_VERSION(2, 0, 3)) | 
| status_t I2C_RTOS_Init | ( | i2c_rtos_handle_t * | handle, | 
| I2C_Type * | base, | ||
| const i2c_master_config_t * | masterConfig, | ||
| uint32_t | srcClock_Hz | ||
| ) | 
This function initializes the I2C module and the related RTOS context.
| handle | The RTOS I2C handle, the pointer to an allocated space for RTOS context. | 
| base | The pointer base address of the I2C instance to initialize. | 
| masterConfig | Configuration structure to set-up I2C in master mode. | 
| srcClock_Hz | Frequency of input clock of the I2C module. | 
| status_t I2C_RTOS_Deinit | ( | i2c_rtos_handle_t * | handle | ) | 
This function deinitializes the I2C module and the related RTOS context.
| handle | The RTOS I2C handle. | 
| status_t I2C_RTOS_Transfer | ( | i2c_rtos_handle_t * | handle, | 
| i2c_master_transfer_t * | transfer | ||
| ) | 
This function performs an I2C transfer according to data given in the transfer structure.
| handle | The RTOS I2C handle. | 
| transfer | Structure specifying the transfer parameters. |