Peripheral State, Mode and Error functions. More...
Functions | |
hal_i2c_state_t | hal_i2c_get_state (i2c_handle_t *p_i2c) |
Return the I2C handle state. More... | |
hal_i2c_mode_t | hal_i2c_get_mode (i2c_handle_t *p_i2c) |
Returns the I2C Master, Slave, Memory or no mode. More... | |
uint32_t | hal_i2c_get_error (i2c_handle_t *p_i2c) |
Return the I2C error code. More... | |
hal_status_t | hal_i2c_suspend_reg (i2c_handle_t *p_i2c) |
Suspend some registers related to I2C configuration before sleep. More... | |
hal_status_t | hal_i2c_resume_reg (i2c_handle_t *p_i2c) |
Restore some registers related to I2C configuration after sleep. This function must be used in conjunction with the hal_i2c_suspend_reg(). More... | |
Peripheral State, Mode and Error functions.
=============================================================================== ##### Peripheral State, Mode and Error functions ##### =============================================================================== [..] This subsection permit to get in run-time the status of the peripheral and the data flow.
uint32_t hal_i2c_get_error | ( | i2c_handle_t * | p_i2c | ) |
Return the I2C error code.
[in] | p_i2c | Pointer to an I2C handle which contains the configuration information for the specified I2C. |
hal_i2c_mode_t hal_i2c_get_mode | ( | i2c_handle_t * | p_i2c | ) |
Returns the I2C Master, Slave, Memory or no mode.
[in] | p_i2c | Pointer to an I2C handle which contains the configuration information for the specified I2C. |
HAL_I2C_MODE_NONE | No I2C communication on going. |
HAL_I2C_MODE_MASTER | I2C communication is in Master Mode. |
HAL_I2C_MODE_SLAVE | I2C communication is in Slave Mode. |
HAL_I2C_MODE_MEM | I2C communication is in Memory Mode. |
hal_i2c_state_t hal_i2c_get_state | ( | i2c_handle_t * | p_i2c | ) |
Return the I2C handle state.
[in] | p_i2c | Pointer to an I2C handle which contains the configuration information for the specified I2C. |
HAL_I2C_STATE_RESET | Peripheral is not yet Initialized. |
HAL_I2C_STATE_READY | Peripheral Initialized and ready for use. |
HAL_I2C_STATE_BUSY | An internal process is ongoing. |
HAL_I2C_STATE_BUSY_TX | Data Transmission process is ongoing. |
HAL_I2C_STATE_BUSY_RX | Data Reception process is ongoing. |
HAL_I2C_STATE_LISTEN | Address Listen Mode is ongoing. |
HAL_I2C_STATE_BUSY_TX_LISTEN | Address Listen Mode and Data Transmission process is ongoing. |
HAL_I2C_STATE_BUSY_RX_LISTEN | Address Listen Mode and Data Reception process is ongoing. |
HAL_I2C_STATE_ABORT | Abort user request ongoing. |
HAL_I2C_STATE_TIMEOUT | Timeout state. |
HAL_I2C_STATE_ERROR | Error. |
hal_status_t hal_i2c_resume_reg | ( | i2c_handle_t * | p_i2c | ) |
Restore some registers related to I2C configuration after sleep. This function must be used in conjunction with the hal_i2c_suspend_reg().
[in] | p_i2c | Pointer to a I2C handle which contains the configuration information for the specified I2C module. |
HAL_OK | Operation is OK. |
HAL_ERROR | Parameter error or operation not supported. |
HAL_BUSY | Driver is busy. |
HAL_TIMEOUT | Timeout occurred. |
hal_status_t hal_i2c_suspend_reg | ( | i2c_handle_t * | p_i2c | ) |
Suspend some registers related to I2C configuration before sleep.
[in] | p_i2c | Pointer to a I2C handle which contains the configuration information for the specified I2C module. |
HAL_OK | Operation is OK. |
HAL_ERROR | Parameter error or operation not supported. |
HAL_BUSY | Driver is busy. |
HAL_TIMEOUT | Timeout occurred. |