STM32G474xx HAL用户手册
宏定义
I2C导出的宏
I2C

宏定义

#define __HAL_I2C_RESET_HANDLE_STATE(__HANDLE__)
 重置I2C句柄状态。
#define __HAL_I2C_ENABLE_IT(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->CR1 |= (__INTERRUPT__))
 使能指定的I2C中断。
#define __HAL_I2C_DISABLE_IT(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->CR1 &= (~(__INTERRUPT__)))
 禁用指定的I2C中断。
#define __HAL_I2C_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)
 检查指定的I2C中断源是否已使能。
#define I2C_FLAG_MASK   (0x0001FFFFU)
 检查指定的I2C标志是否已设置。
#define __HAL_I2C_GET_FLAG(__HANDLE__, __FLAG__)
#define __HAL_I2C_CLEAR_FLAG(__HANDLE__, __FLAG__)
 清除I2C待处理标志,这些标志通过在特定位写入1来清除。
#define __HAL_I2C_ENABLE(__HANDLE__)   (SET_BIT((__HANDLE__)->Instance->CR1, I2C_CR1_PE))
 使能指定的I2C外设。
#define __HAL_I2C_DISABLE(__HANDLE__)   (CLEAR_BIT((__HANDLE__)->Instance->CR1, I2C_CR1_PE))
 禁用指定的I2C外设。
#define __HAL_I2C_GENERATE_NACK(__HANDLE__)   (SET_BIT((__HANDLE__)->Instance->CR2, I2C_CR2_NACK))
 在从机模式下生成I2C外设不应答。

宏定义文档

#define __HAL_I2C_CLEAR_FLAG (   __HANDLE__,
  __FLAG__ 
)
值:
(((__FLAG__) == I2C_FLAG_TXE) ? \
                                                    ((__HANDLE__)->Instance->ISR |= (__FLAG__)) : \
                                                    ((__HANDLE__)->Instance->ICR = (__FLAG__)))

清除I2C待处理标志,这些标志通过在特定位写入1来清除。

参数:
__HANDLE__指定I2C句柄。
__FLAG__指定要清除的标志。此参数可以是以下值的任意组合:
返回值:

定义于文件 stm32g4xx_hal_i2c.h564 行。

被以下函数引用:HAL_I2C_ER_IRQHandler()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_Seq_Receive_DMA()HAL_I2C_Slave_Seq_Receive_IT()HAL_I2C_Slave_Seq_Transmit_DMA()HAL_I2C_Slave_Seq_Transmit_IT()HAL_I2C_Slave_Transmit()I2C_Flush_TXDR()I2C_IsErrorOccurred()I2C_ITAddrCplt()I2C_ITError()I2C_ITListenCplt()I2C_ITMasterCplt()I2C_ITSlaveCplt()I2C_Master_ISR_DMA()I2C_Master_ISR_IT()I2C_Mem_ISR_DMA()I2C_Mem_ISR_IT()I2C_Slave_ISR_DMA()I2C_Slave_ISR_IT()I2C_WaitOnRXNEFlagUntilTimeout()

#define __HAL_I2C_DISABLE (   __HANDLE__)    (CLEAR_BIT((__HANDLE__)->Instance->CR1, I2C_CR1_PE))

禁用指定的I2C外设。

参数:
__HANDLE__指定I2C句柄。
返回值:

定义于文件 stm32g4xx_hal_i2c.h578 行。

被以下函数引用:HAL_I2C_DeInit()HAL_I2C_Init()HAL_I2CEx_ConfigAnalogFilter()HAL_I2CEx_ConfigDigitalFilter()HAL_I2CEx_DisableWakeUp()HAL_I2CEx_EnableWakeUp()

#define __HAL_I2C_DISABLE_IT (   __HANDLE__,
  __INTERRUPT__ 
)    ((__HANDLE__)->Instance->CR1 &= (~(__INTERRUPT__)))

禁用指定的I2C中断。

参数:
__HANDLE__指定I2C句柄。
__INTERRUPT__指定要禁用的中断源。此参数可以是以下值之一:
返回值:

定义于文件 stm32g4xx_hal_i2c.h501 行。

被以下函数引用:I2C_Disable_IRQ()I2C_Master_ISR_DMA()

#define __HAL_I2C_ENABLE (   __HANDLE__)    (SET_BIT((__HANDLE__)->Instance->CR1, I2C_CR1_PE))

使能指定的I2C外设。

参数:
__HANDLE__指定I2C句柄。
返回值:

定义于文件 stm32g4xx_hal_i2c.h572 行。

被以下函数引用:HAL_I2C_Init()HAL_I2CEx_ConfigAnalogFilter()HAL_I2CEx_ConfigDigitalFilter()HAL_I2CEx_DisableWakeUp()HAL_I2CEx_EnableWakeUp()