MCUXpresso SDK API Reference Manual
Rev. 0
NXP Semiconductors
|
Data Structures | |
struct | i2c_rtos_handle_t |
I2C FreeRTOS handle. 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. | |
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. |