Enumerations

enum  hal_i2c_state_t {
  HAL_I2C_STATE_RESET = 0x00U, HAL_I2C_STATE_READY = 0x20U, HAL_I2C_STATE_BUSY = 0x24U, HAL_I2C_STATE_BUSY_TX = 0x21U,
  HAL_I2C_STATE_BUSY_RX = 0x22U, HAL_I2C_STATE_LISTEN = 0x28U, HAL_I2C_STATE_BUSY_TX_LISTEN = 0x29U, HAL_I2C_STATE_BUSY_RX_LISTEN = 0x2AU,
  HAL_I2C_STATE_ABORT = 0x60U, HAL_I2C_STATE_TIMEOUT = 0xA0U, HAL_I2C_STATE_ERROR = 0xE0U
}
 HAL I2C State Enumerations definition. More...
 

Detailed Description

Enumeration Type Documentation

◆ hal_i2c_state_t

HAL I2C State Enumerations definition.

Note
HAL I2C State value coding follow below described bitmap :
  b7-b6  Error information
      00 : No Error
      01 : Abort (Abort user request on going)
      10 : Timeout
      11 : Error
  b5     IP initilisation status
      0  : Reset (IP not initialized)
      1  : init done (IP initialized and ready to use. HAL I2C init function called)
  b4     (not used)
      x  : Should be set to 0
  b3
      0  : Ready or Busy (No Listen mode ongoing)
      1  : Listen (IP in Address Listen Mode)
  b2     Intrinsic process state
      0  : Ready
      1  : Busy (IP busy with some configuration or internal operations)
  b1     Rx state
      0  : Ready (no Rx operation ongoing)
      1  : Busy (Rx operation ongoing)
  b0     Tx state
      0  : Ready (no Tx operation ongoing)
      1  : Busy (Tx operation ongoing)
* 
Enumerator
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