STM32F4xx HAL Documentation
Hardware Abstraction Layer for STM32F4 familiy
Loading...
Searching...
No Matches
I2C Private Functions
Collaboration diagram for I2C Private Functions:

Functions

static void I2C_DMAXferCplt (DMA_HandleTypeDef *hdma)
 DMA I2C process complete callback.
 
static void I2C_DMAError (DMA_HandleTypeDef *hdma)
 DMA I2C communication error callback.
 
static void I2C_DMAAbort (DMA_HandleTypeDef *hdma)
 DMA I2C communication abort callback (To be called at end of DMA Abort procedure).
 
static void I2C_ITError (I2C_HandleTypeDef *hi2c)
 I2C interrupts error process.
 
static HAL_StatusTypeDef I2C_MasterRequestWrite (I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint32_t Timeout, uint32_t Tickstart)
 
static HAL_StatusTypeDef I2C_MasterRequestRead (I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint32_t Timeout, uint32_t Tickstart)
 Master sends target device address for read request.
 
static HAL_StatusTypeDef I2C_RequestMemoryWrite (I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint16_t MemAddress, uint16_t MemAddSize, uint32_t Timeout, uint32_t Tickstart)
 Master sends target device address followed by internal memory address for write request.
 
static HAL_StatusTypeDef I2C_RequestMemoryRead (I2C_HandleTypeDef *hi2c, uint16_t DevAddress, uint16_t MemAddress, uint16_t MemAddSize, uint32_t Timeout, uint32_t Tickstart)
 Master sends target device address followed by internal memory address for read request.
 
static HAL_StatusTypeDef I2C_WaitOnFlagUntilTimeout (I2C_HandleTypeDef *hi2c, uint32_t Flag, FlagStatus Status, uint32_t Timeout, uint32_t Tickstart)
 This function handles I2C Communication Timeout.
 
static HAL_StatusTypeDef I2C_WaitOnMasterAddressFlagUntilTimeout (I2C_HandleTypeDef *hi2c, uint32_t Flag, uint32_t Timeout, uint32_t Tickstart)
 This function handles I2C Communication Timeout for Master addressing phase.
 
static HAL_StatusTypeDef I2C_WaitOnTXEFlagUntilTimeout (I2C_HandleTypeDef *hi2c, uint32_t Timeout, uint32_t Tickstart)
 This function handles I2C Communication Timeout for specific usage of TXE flag.
 
static HAL_StatusTypeDef I2C_WaitOnBTFFlagUntilTimeout (I2C_HandleTypeDef *hi2c, uint32_t Timeout, uint32_t Tickstart)
 This function handles I2C Communication Timeout for specific usage of BTF flag.
 
static HAL_StatusTypeDef I2C_WaitOnRXNEFlagUntilTimeout (I2C_HandleTypeDef *hi2c, uint32_t Timeout, uint32_t Tickstart)
 This function handles I2C Communication Timeout for specific usage of RXNE flag.
 
static HAL_StatusTypeDef I2C_WaitOnSTOPFlagUntilTimeout (I2C_HandleTypeDef *hi2c, uint32_t Timeout, uint32_t Tickstart)
 This function handles I2C Communication Timeout for specific usage of STOP flag.
 
static HAL_StatusTypeDef I2C_WaitOnSTOPRequestThroughIT (I2C_HandleTypeDef *hi2c)
 This function handles I2C Communication Timeout for specific usage of STOP request through Interrupt.
 
static HAL_StatusTypeDef I2C_IsAcknowledgeFailed (I2C_HandleTypeDef *hi2c)
 This function handles Acknowledge failed detection during an I2C Communication.
 
static void I2C_MasterTransmit_TXE (I2C_HandleTypeDef *hi2c)
 Handle TXE flag for Master.
 
static void I2C_MasterTransmit_BTF (I2C_HandleTypeDef *hi2c)
 Handle BTF flag for Master transmitter.
 
static void I2C_MasterReceive_RXNE (I2C_HandleTypeDef *hi2c)
 Handle RXNE flag for Master.
 
static void I2C_MasterReceive_BTF (I2C_HandleTypeDef *hi2c)
 Handle BTF flag for Master receiver.
 
static void I2C_Master_SB (I2C_HandleTypeDef *hi2c)
 Handle SB flag for Master.
 
static void I2C_Master_ADD10 (I2C_HandleTypeDef *hi2c)
 Handle ADD10 flag for Master.
 
static void I2C_Master_ADDR (I2C_HandleTypeDef *hi2c)
 Handle ADDR flag for Master.
 
static void I2C_SlaveTransmit_TXE (I2C_HandleTypeDef *hi2c)
 Handle TXE flag for Slave.
 
static void I2C_SlaveTransmit_BTF (I2C_HandleTypeDef *hi2c)
 Handle BTF flag for Slave transmitter.
 
static void I2C_SlaveReceive_RXNE (I2C_HandleTypeDef *hi2c)
 Handle RXNE flag for Slave.
 
static void I2C_SlaveReceive_BTF (I2C_HandleTypeDef *hi2c)
 Handle BTF flag for Slave receiver.
 
static void I2C_Slave_ADDR (I2C_HandleTypeDef *hi2c, uint32_t IT2Flags)
 Handle ADD flag for Slave.
 
static void I2C_Slave_STOPF (I2C_HandleTypeDef *hi2c)
 Handle STOPF flag for Slave.
 
static void I2C_Slave_AF (I2C_HandleTypeDef *hi2c)
 
static void I2C_MemoryTransmit_TXE_BTF (I2C_HandleTypeDef *hi2c)
 Handle TXE and BTF flag for Memory transmitter.
 
static void I2C_ConvertOtherXferOptions (I2C_HandleTypeDef *hi2c)
 Convert I2Cx OTHER_xxx XferOptions to functional XferOptions.
 
static void I2C_Flush_DR (I2C_HandleTypeDef *hi2c)
 I2C data register flush process.
 

Detailed Description

Function Documentation

◆ I2C_DMAXferCplt()

◆ I2C_DMAError()

◆ I2C_DMAAbort()

◆ I2C_ITError()

◆ I2C_MasterRequestWrite()

static HAL_StatusTypeDef I2C_MasterRequestWrite ( I2C_HandleTypeDef * hi2c,
uint16_t DevAddress,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_i2c.c>

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
DevAddressTarget device address: The device 7 bits address value in datasheet must be shifted to the left before calling the interface
TimeoutTimeout duration
TickstartTick start value
Return values
HALstatus

Definition at line 6577 of file stm32f4xx_hal_i2c.c.

References I2C_InitTypeDef::AddressingMode, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_I2C_WRONG_START, HAL_OK, HAL_TIMEOUT, I2C_10BIT_ADDRESS, I2C_10BIT_HEADER_WRITE, I2C_7BIT_ADD_WRITE, I2C_ADDRESSINGMODE_7BIT, I2C_FIRST_AND_LAST_FRAME, I2C_FIRST_FRAME, I2C_FLAG_ADD10, I2C_FLAG_ADDR, I2C_FLAG_SB, I2C_NO_OPTION_FRAME, I2C_STATE_MASTER_BUSY_RX, I2C_WaitOnFlagUntilTimeout(), I2C_WaitOnMasterAddressFlagUntilTimeout(), I2C_HandleTypeDef::Init, I2C_HandleTypeDef::Instance, I2C_HandleTypeDef::PreviousState, and I2C_HandleTypeDef::XferOptions.

Referenced by HAL_I2C_Master_Transmit().

◆ I2C_MasterRequestRead()

static HAL_StatusTypeDef I2C_MasterRequestRead ( I2C_HandleTypeDef * hi2c,
uint16_t DevAddress,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_i2c.c>

Master sends target device address for read request.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
DevAddressTarget device address: The device 7 bits address value in datasheet must be shifted to the left before calling the interface
TimeoutTimeout duration
TickstartTick start value
Return values
HALstatus

Definition at line 6647 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_CLEAR_ADDRFLAG, I2C_InitTypeDef::AddressingMode, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_I2C_WRONG_START, HAL_OK, HAL_TIMEOUT, I2C_10BIT_ADDRESS, I2C_10BIT_HEADER_READ, I2C_10BIT_HEADER_WRITE, I2C_7BIT_ADD_READ, I2C_ADDRESSINGMODE_7BIT, I2C_FIRST_AND_LAST_FRAME, I2C_FIRST_FRAME, I2C_FLAG_ADD10, I2C_FLAG_ADDR, I2C_FLAG_SB, I2C_NO_OPTION_FRAME, I2C_STATE_MASTER_BUSY_TX, I2C_WaitOnFlagUntilTimeout(), I2C_WaitOnMasterAddressFlagUntilTimeout(), I2C_HandleTypeDef::Init, I2C_HandleTypeDef::Instance, I2C_HandleTypeDef::PreviousState, and I2C_HandleTypeDef::XferOptions.

Referenced by HAL_I2C_Master_Receive().

◆ I2C_RequestMemoryWrite()

static HAL_StatusTypeDef I2C_RequestMemoryWrite ( I2C_HandleTypeDef * hi2c,
uint16_t DevAddress,
uint16_t MemAddress,
uint16_t MemAddSize,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_i2c.c>

Master sends target device address followed by internal memory address for write request.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
DevAddressTarget device address: The device 7 bits address value in datasheet must be shifted to the left before calling the interface
MemAddressInternal memory address
MemAddSizeSize of internal memory address
TimeoutTimeout duration
TickstartTick start value
Return values
HALstatus

Definition at line 6747 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_CLEAR_ADDRFLAG, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_I2C_ERROR_AF, HAL_I2C_WRONG_START, HAL_OK, HAL_TIMEOUT, I2C_7BIT_ADD_WRITE, I2C_FLAG_ADDR, I2C_FLAG_SB, I2C_MEM_ADD_LSB, I2C_MEM_ADD_MSB, I2C_MEMADD_SIZE_8BIT, I2C_WaitOnFlagUntilTimeout(), I2C_WaitOnMasterAddressFlagUntilTimeout(), I2C_WaitOnTXEFlagUntilTimeout(), and I2C_HandleTypeDef::Instance.

Referenced by HAL_I2C_Mem_Write(), and HAL_I2C_Mem_Write_DMA().

◆ I2C_RequestMemoryRead()

static HAL_StatusTypeDef I2C_RequestMemoryRead ( I2C_HandleTypeDef * hi2c,
uint16_t DevAddress,
uint16_t MemAddress,
uint16_t MemAddSize,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_i2c.c>

Master sends target device address followed by internal memory address for read request.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
DevAddressTarget device address: The device 7 bits address value in datasheet must be shifted to the left before calling the interface
MemAddressInternal memory address
MemAddSizeSize of internal memory address
TimeoutTimeout duration
TickstartTick start value
Return values
HALstatus

Definition at line 6827 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_CLEAR_ADDRFLAG, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_I2C_ERROR_AF, HAL_I2C_WRONG_START, HAL_OK, HAL_TIMEOUT, I2C_7BIT_ADD_READ, I2C_7BIT_ADD_WRITE, I2C_FLAG_ADDR, I2C_FLAG_SB, I2C_MEM_ADD_LSB, I2C_MEM_ADD_MSB, I2C_MEMADD_SIZE_8BIT, I2C_WaitOnFlagUntilTimeout(), I2C_WaitOnMasterAddressFlagUntilTimeout(), I2C_WaitOnTXEFlagUntilTimeout(), and I2C_HandleTypeDef::Instance.

Referenced by HAL_I2C_Mem_Read(), and HAL_I2C_Mem_Read_DMA().

◆ I2C_WaitOnFlagUntilTimeout()

static HAL_StatusTypeDef I2C_WaitOnFlagUntilTimeout ( I2C_HandleTypeDef * hi2c,
uint32_t Flag,
FlagStatus Status,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_i2c.c>

This function handles I2C Communication Timeout.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
Flagspecifies the I2C flag to check.
StatusThe new Flag status (SET or RESET).
TimeoutTimeout duration
TickstartTick start value
Return values
HALstatus

Definition at line 7225 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_GET_FLAG, __HAL_UNLOCK, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_GetTick(), HAL_I2C_ERROR_TIMEOUT, HAL_I2C_MODE_NONE, HAL_I2C_STATE_READY, HAL_MAX_DELAY, HAL_OK, I2C_STATE_NONE, I2C_HandleTypeDef::Mode, I2C_HandleTypeDef::PreviousState, and I2C_HandleTypeDef::State.

Referenced by HAL_I2C_IsDeviceReady(), HAL_I2C_Master_Receive(), HAL_I2C_Master_Transmit(), HAL_I2C_Mem_Read(), HAL_I2C_Mem_Write(), HAL_I2C_Slave_Receive(), HAL_I2C_Slave_Transmit(), I2C_MasterRequestRead(), I2C_MasterRequestWrite(), I2C_RequestMemoryRead(), and I2C_RequestMemoryWrite().

◆ I2C_WaitOnMasterAddressFlagUntilTimeout()

static HAL_StatusTypeDef I2C_WaitOnMasterAddressFlagUntilTimeout ( I2C_HandleTypeDef * hi2c,
uint32_t Flag,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_i2c.c>

This function handles I2C Communication Timeout for Master addressing phase.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
Flagspecifies the I2C flag to check.
TimeoutTimeout duration
TickstartTick start value
Return values
HALstatus

Definition at line 7262 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_CLEAR_FLAG, __HAL_I2C_GET_FLAG, __HAL_UNLOCK, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_GetTick(), HAL_I2C_ERROR_AF, HAL_I2C_ERROR_TIMEOUT, HAL_I2C_MODE_NONE, HAL_I2C_STATE_READY, HAL_MAX_DELAY, HAL_OK, I2C_FLAG_AF, I2C_STATE_NONE, I2C_HandleTypeDef::Instance, I2C_HandleTypeDef::Mode, I2C_HandleTypeDef::PreviousState, and I2C_HandleTypeDef::State.

Referenced by I2C_MasterRequestRead(), I2C_MasterRequestWrite(), I2C_RequestMemoryRead(), and I2C_RequestMemoryWrite().

◆ I2C_WaitOnTXEFlagUntilTimeout()

static HAL_StatusTypeDef I2C_WaitOnTXEFlagUntilTimeout ( I2C_HandleTypeDef * hi2c,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_i2c.c>

This function handles I2C Communication Timeout for specific usage of TXE flag.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for the specified I2C.
TimeoutTimeout duration
TickstartTick start value
Return values
HALstatus

Definition at line 7316 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_GET_FLAG, __HAL_UNLOCK, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_GetTick(), HAL_I2C_ERROR_TIMEOUT, HAL_I2C_MODE_NONE, HAL_I2C_STATE_READY, HAL_MAX_DELAY, HAL_OK, I2C_FLAG_TXE, I2C_IsAcknowledgeFailed(), I2C_STATE_NONE, I2C_HandleTypeDef::Mode, I2C_HandleTypeDef::PreviousState, and I2C_HandleTypeDef::State.

Referenced by HAL_I2C_Master_Transmit(), HAL_I2C_Mem_Write(), HAL_I2C_Slave_Transmit(), I2C_RequestMemoryRead(), and I2C_RequestMemoryWrite().

◆ I2C_WaitOnBTFFlagUntilTimeout()

static HAL_StatusTypeDef I2C_WaitOnBTFFlagUntilTimeout ( I2C_HandleTypeDef * hi2c,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_i2c.c>

This function handles I2C Communication Timeout for specific usage of BTF flag.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for the specified I2C.
TimeoutTimeout duration
TickstartTick start value
Return values
HALstatus

Definition at line 7357 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_GET_FLAG, __HAL_UNLOCK, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_GetTick(), HAL_I2C_ERROR_TIMEOUT, HAL_I2C_MODE_NONE, HAL_I2C_STATE_READY, HAL_MAX_DELAY, HAL_OK, I2C_FLAG_BTF, I2C_IsAcknowledgeFailed(), I2C_STATE_NONE, I2C_HandleTypeDef::Mode, I2C_HandleTypeDef::PreviousState, and I2C_HandleTypeDef::State.

Referenced by HAL_I2C_Master_Transmit(), and HAL_I2C_Mem_Write().

◆ I2C_WaitOnRXNEFlagUntilTimeout()

static HAL_StatusTypeDef I2C_WaitOnRXNEFlagUntilTimeout ( I2C_HandleTypeDef * hi2c,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_i2c.c>

This function handles I2C Communication Timeout for specific usage of RXNE flag.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for the specified I2C.
TimeoutTimeout duration
TickstartTick start value
Return values
HALstatus

Definition at line 7463 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_CLEAR_FLAG, __HAL_I2C_GET_FLAG, __HAL_UNLOCK, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_GetTick(), HAL_I2C_ERROR_NONE, HAL_I2C_ERROR_TIMEOUT, HAL_I2C_MODE_NONE, HAL_I2C_STATE_READY, HAL_OK, I2C_FLAG_RXNE, I2C_FLAG_STOPF, I2C_STATE_NONE, I2C_HandleTypeDef::Mode, I2C_HandleTypeDef::PreviousState, and I2C_HandleTypeDef::State.

Referenced by HAL_I2C_Master_Receive(), HAL_I2C_Mem_Read(), and HAL_I2C_Slave_Receive().

◆ I2C_WaitOnSTOPFlagUntilTimeout()

static HAL_StatusTypeDef I2C_WaitOnSTOPFlagUntilTimeout ( I2C_HandleTypeDef * hi2c,
uint32_t Timeout,
uint32_t Tickstart )
static

#include <stm32f4xx_hal_i2c.c>

This function handles I2C Communication Timeout for specific usage of STOP flag.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for the specified I2C.
TimeoutTimeout duration
TickstartTick start value
Return values
HALstatus

Definition at line 7398 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_GET_FLAG, __HAL_UNLOCK, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_GetTick(), HAL_I2C_ERROR_TIMEOUT, HAL_I2C_MODE_NONE, HAL_I2C_STATE_READY, HAL_OK, I2C_FLAG_STOPF, I2C_IsAcknowledgeFailed(), I2C_STATE_NONE, I2C_HandleTypeDef::Mode, I2C_HandleTypeDef::PreviousState, and I2C_HandleTypeDef::State.

Referenced by HAL_I2C_Slave_Receive().

◆ I2C_WaitOnSTOPRequestThroughIT()

static HAL_StatusTypeDef I2C_WaitOnSTOPRequestThroughIT ( I2C_HandleTypeDef * hi2c)
static

#include <stm32f4xx_hal_i2c.c>

This function handles I2C Communication Timeout for specific usage of STOP request through Interrupt.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for the specified I2C.
Return values
HALstatus

Definition at line 7434 of file stm32f4xx_hal_i2c.c.

References I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_I2C_ERROR_TIMEOUT, HAL_OK, I2C_TIMEOUT_STOP_FLAG, and I2C_HandleTypeDef::Instance.

Referenced by I2C_MasterReceive_RXNE().

◆ I2C_IsAcknowledgeFailed()

static HAL_StatusTypeDef I2C_IsAcknowledgeFailed ( I2C_HandleTypeDef * hi2c)
static

#include <stm32f4xx_hal_i2c.c>

This function handles Acknowledge failed detection during an I2C Communication.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for the specified I2C.
Return values
HALstatus

Definition at line 7511 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_CLEAR_FLAG, __HAL_I2C_GET_FLAG, __HAL_UNLOCK, I2C_HandleTypeDef::ErrorCode, HAL_ERROR, HAL_I2C_ERROR_AF, HAL_I2C_MODE_NONE, HAL_I2C_STATE_READY, HAL_OK, I2C_FLAG_AF, I2C_STATE_NONE, I2C_HandleTypeDef::Mode, I2C_HandleTypeDef::PreviousState, and I2C_HandleTypeDef::State.

Referenced by I2C_WaitOnBTFFlagUntilTimeout(), I2C_WaitOnSTOPFlagUntilTimeout(), and I2C_WaitOnTXEFlagUntilTimeout().

◆ I2C_MasterTransmit_TXE()

◆ I2C_MasterTransmit_BTF()

◆ I2C_MasterReceive_RXNE()

◆ I2C_MasterReceive_BTF()

◆ I2C_Master_SB()

◆ I2C_Master_ADD10()

static void I2C_Master_ADD10 ( I2C_HandleTypeDef * hi2c)
static

#include <stm32f4xx_hal_i2c.c>

Handle ADD10 flag for Master.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
Return values
None

Definition at line 5833 of file stm32f4xx_hal_i2c.c.

References I2C_HandleTypeDef::Devaddress, I2C_HandleTypeDef::hdmarx, I2C_HandleTypeDef::hdmatx, I2C_10BIT_ADDRESS, I2C_HandleTypeDef::Instance, and __DMA_HandleTypeDef::XferCpltCallback.

Referenced by HAL_I2C_EV_IRQHandler().

◆ I2C_Master_ADDR()

◆ I2C_SlaveTransmit_TXE()

static void I2C_SlaveTransmit_TXE ( I2C_HandleTypeDef * hi2c)
static

#include <stm32f4xx_hal_i2c.c>

Handle TXE flag for Slave.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
Return values
None

Definition at line 5997 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_DISABLE_IT, HAL_I2C_SlaveTxCpltCallback(), HAL_I2C_STATE_BUSY_TX_LISTEN, HAL_I2C_STATE_LISTEN, I2C_IT_BUF, I2C_STATE_SLAVE_BUSY_TX, I2C_HandleTypeDef::Instance, I2C_HandleTypeDef::pBuffPtr, I2C_HandleTypeDef::PreviousState, I2C_HandleTypeDef::State, and I2C_HandleTypeDef::XferCount.

Referenced by HAL_I2C_EV_IRQHandler().

◆ I2C_SlaveTransmit_BTF()

static void I2C_SlaveTransmit_BTF ( I2C_HandleTypeDef * hi2c)
static

#include <stm32f4xx_hal_i2c.c>

Handle BTF flag for Slave transmitter.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
Return values
None

Definition at line 6038 of file stm32f4xx_hal_i2c.c.

References I2C_HandleTypeDef::Instance, I2C_HandleTypeDef::pBuffPtr, and I2C_HandleTypeDef::XferCount.

Referenced by HAL_I2C_EV_IRQHandler().

◆ I2C_SlaveReceive_RXNE()

static void I2C_SlaveReceive_RXNE ( I2C_HandleTypeDef * hi2c)
static

#include <stm32f4xx_hal_i2c.c>

Handle RXNE flag for Slave.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
Return values
None

Definition at line 6059 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_DISABLE_IT, HAL_I2C_SlaveRxCpltCallback(), HAL_I2C_STATE_BUSY_RX_LISTEN, HAL_I2C_STATE_LISTEN, I2C_IT_BUF, I2C_STATE_SLAVE_BUSY_RX, I2C_HandleTypeDef::Instance, I2C_HandleTypeDef::pBuffPtr, I2C_HandleTypeDef::PreviousState, I2C_HandleTypeDef::State, and I2C_HandleTypeDef::XferCount.

Referenced by HAL_I2C_EV_IRQHandler().

◆ I2C_SlaveReceive_BTF()

static void I2C_SlaveReceive_BTF ( I2C_HandleTypeDef * hi2c)
static

#include <stm32f4xx_hal_i2c.c>

Handle BTF flag for Slave receiver.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
Return values
None

Definition at line 6100 of file stm32f4xx_hal_i2c.c.

References I2C_HandleTypeDef::Instance, I2C_HandleTypeDef::pBuffPtr, and I2C_HandleTypeDef::XferCount.

Referenced by HAL_I2C_EV_IRQHandler().

◆ I2C_Slave_ADDR()

static void I2C_Slave_ADDR ( I2C_HandleTypeDef * hi2c,
uint32_t IT2Flags )
static

#include <stm32f4xx_hal_i2c.c>

Handle ADD flag for Slave.

Parameters
hi2cPointer to a I2C_HandleTypeDef structure that contains the configuration information for I2C module
IT2FlagsInterrupt2 flags to handle.
Return values
None

Definition at line 6122 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_CLEAR_ADDRFLAG, __HAL_I2C_DISABLE_IT, __HAL_UNLOCK, HAL_I2C_AddrCallback(), HAL_I2C_STATE_LISTEN, I2C_CHECK_FLAG, I2C_DIRECTION_RECEIVE, I2C_DIRECTION_TRANSMIT, I2C_FLAG_DUALF, I2C_FLAG_TRA, I2C_IT_BUF, I2C_HandleTypeDef::Init, I2C_InitTypeDef::OwnAddress1, I2C_InitTypeDef::OwnAddress2, and I2C_HandleTypeDef::State.

Referenced by HAL_I2C_EV_IRQHandler().

◆ I2C_Slave_STOPF()

◆ I2C_Slave_AF()

◆ I2C_MemoryTransmit_TXE_BTF()

◆ I2C_ConvertOtherXferOptions()

static void I2C_ConvertOtherXferOptions ( I2C_HandleTypeDef * hi2c)
static

#include <stm32f4xx_hal_i2c.c>

Convert I2Cx OTHER_xxx XferOptions to functional XferOptions.

Parameters
hi2cI2C handle.
Return values
None

Definition at line 7536 of file stm32f4xx_hal_i2c.c.

References I2C_FIRST_AND_LAST_FRAME, I2C_FIRST_FRAME, I2C_OTHER_AND_LAST_FRAME, I2C_OTHER_FRAME, and I2C_HandleTypeDef::XferOptions.

Referenced by HAL_I2C_EV_IRQHandler().

◆ I2C_Flush_DR()

static void I2C_Flush_DR ( I2C_HandleTypeDef * hi2c)
static

#include <stm32f4xx_hal_i2c.c>

I2C data register flush process.

Parameters
hi2cI2C handle.
Return values
None

Definition at line 959 of file stm32f4xx_hal_i2c.c.

References __HAL_I2C_GET_FLAG, I2C_FLAG_TXE, and I2C_HandleTypeDef::Instance.

Referenced by I2C_MemoryTransmit_TXE_BTF(), and I2C_Slave_AF().