hi2c:  Pointer to a I2C_HandleTypeDef structure that contains 
the configuration information for the specified I2C. 
  DevAddress:  Target device address 
  Trials:  Number of trials 
  Timeout:  Timeout duration 
  This function is used with Memory devices 
HAL_I2C_Master_Transmit_IT 
HAL_StatusTypeDef HAL_I2C_Master_Transmit_IT 
(I2C_HandleTypeDef * hi2c, uint16_t DevAddress, uint8_t * 
pData, uint16_t Size) 
Transmit in master mode an amount of data in non-blocking mode 
with Interrupt.  
  hi2c:  Pointer to a I2C_HandleTypeDef structure that contains 
the configuration information for the specified I2C. 
  DevAddress:  Target device address: The device 7 bits 
address value in datasheet must be shift at right before call 
interface 
  pData:  Pointer to data buffer 
  Size:  Amount of data to be sent 
HAL_I2C_Master_Receive_IT 
HAL_StatusTypeDef HAL_I2C_Master_Receive_IT 
(I2C_HandleTypeDef * hi2c, uint16_t DevAddress, uint8_t * 
pData, uint16_t Size) 
Receive in master mode an amount of data in non-blocking mode 
with Interrupt.  
  hi2c:  Pointer to a I2C_HandleTypeDef structure that contains 
the configuration information for the specified I2C. 
  DevAddress:  Target device address: The device 7 bits 
address value in datasheet must be shift at right before call 
interface 
  pData:  Pointer to data buffer 
  Size:  Amount of data to be sent 
HAL_I2C_Slave_Transmit_IT 
HAL_StatusTypeDef HAL_I2C_Slave_Transmit_IT 
(I2C_HandleTypeDef * hi2c, uint8_t * pData, uint16_t Size) 
Transmit in slave mode an amount of data in non-blocking mode 
with Interrupt.  
  hi2c:  Pointer to a I2C_HandleTypeDef structure that contains 
the configuration information for the specified I2C. 
  pData:  Pointer to data buffer