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. |