STM32G474xx HAL 用户手册
宏定义
SMBUS 导出宏
SMBUS

宏定义

#define __HAL_SMBUS_RESET_HANDLE_STATE(__HANDLE__)
 重置 SMBUS 句柄状态。
#define __HAL_SMBUS_ENABLE_IT(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->CR1 |= (__INTERRUPT__))
 使能指定的 SMBUS 中断。
#define __HAL_SMBUS_DISABLE_IT(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->CR1 &= (~(__INTERRUPT__)))
 禁用指定的 SMBUS 中断。
#define __HAL_SMBUS_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)   ((((__HANDLE__)->Instance->CR1 & (__INTERRUPT__)) == (__INTERRUPT__)) ? SET : RESET)
 检查指定的 SMBUS 中断源是否已使能。
#define SMBUS_FLAG_MASK   (0x0001FFFFU)
 检查指定的 SMBUS 标志是否已置位。
#define __HAL_SMBUS_GET_FLAG(__HANDLE__, __FLAG__)
#define __HAL_SMBUS_CLEAR_FLAG(__HANDLE__, __FLAG__)
 清除 SMBUS 挂起标志,这些标志通过在特定位置写入1来清除。
#define __HAL_SMBUS_ENABLE(__HANDLE__)   (SET_BIT((__HANDLE__)->Instance->CR1, I2C_CR1_PE))
 使能指定的 SMBUS 外设。
#define __HAL_SMBUS_DISABLE(__HANDLE__)   (CLEAR_BIT((__HANDLE__)->Instance->CR1, I2C_CR1_PE))
 禁用指定的 SMBUS 外设。
#define __HAL_SMBUS_GENERATE_NACK(__HANDLE__)   (SET_BIT((__HANDLE__)->Instance->CR2, I2C_CR2_NACK))
 在从机模式下生成 SMBUS 外设的非应答信号。

宏定义文档

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

清除 SMBUS 挂起标志,这些标志通过在特定位置写入1来清除。

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

定义位于文件 stm32g4xx_hal_smbus.h 的第 525 行。

HAL_SMBUS_EnableAlert_IT()HAL_SMBUS_IsDeviceReady()HAL_SMBUS_Slave_Receive_IT()HAL_SMBUS_Slave_Transmit_IT()SMBUS_Flush_TXDR()SMBUS_ITErrorHandler()SMBUS_Master_ISR()SMBUS_Slave_ISR() 引用。

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

禁用指定的 SMBUS 外设。

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

定义位于文件 stm32g4xx_hal_smbus.h 的第 539 行。

HAL_SMBUS_ConfigAnalogFilter()HAL_SMBUS_ConfigDigitalFilter()HAL_SMBUS_DeInit()HAL_SMBUS_Init()HAL_SMBUSEx_DisableWakeUp()HAL_SMBUSEx_EnableWakeUp()SMBUS_Master_ISR() 引用。

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

禁用指定的 SMBUS 中断。

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

定义位于文件 stm32g4xx_hal_smbus.h 的第 461 行。

SMBUS_Disable_IRQ()SMBUS_Slave_ISR() 引用。

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

使能指定的 SMBUS 外设。

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

定义位于文件 stm32g4xx_hal_smbus.h 的第 533 行。

HAL_SMBUS_ConfigAnalogFilter()HAL_SMBUS_ConfigDigitalFilter()HAL_SMBUS_Init()HAL_SMBUSEx_DisableWakeUp()HAL_SMBUSEx_EnableWakeUp()SMBUS_Master_ISR() 引用。

#define __HAL_SMBUS_ENABLE_IT (   __HANDLE__,
  __INTERRUPT__ 
)    ((__HANDLE__)->Instance->CR1 |= (__INTERRUPT__))

使能指定的 SMBUS 中断。

参数:
__HANDLE__指定 SMBUS 句柄。
__INTERRUPT__指定要使能的中断源。此参数可以是以下值之一: