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

宏定义

#define __HAL_PWR_GET_FLAG(__FLAG__)
 检查是否设置了特定的PWR标志。
#define __HAL_PWR_CLEAR_FLAG(__FLAG__)
 清除特定的PWR标志。
#define __HAL_PWR_PVD_EXTI_ENABLE_IT()   SET_BIT(EXTI->IMR1, PWR_EXTI_LINE_PVD)
 使能PVD扩展中断线。
#define __HAL_PWR_PVD_EXTI_DISABLE_IT()   CLEAR_BIT(EXTI->IMR1, PWR_EXTI_LINE_PVD)
 禁用PVD扩展中断线。
#define __HAL_PWR_PVD_EXTI_ENABLE_EVENT()   SET_BIT(EXTI->EMR1, PWR_EVENT_LINE_PVD)
 使能PVD事件线。
#define __HAL_PWR_PVD_EXTI_DISABLE_EVENT()   CLEAR_BIT(EXTI->EMR1, PWR_EVENT_LINE_PVD)
 禁用PVD事件线。
#define __HAL_PWR_PVD_EXTI_ENABLE_RISING_EDGE()   SET_BIT(EXTI->RTSR1, PWR_EXTI_LINE_PVD)
 使能PVD扩展中断上升沿触发。
#define __HAL_PWR_PVD_EXTI_DISABLE_RISING_EDGE()   CLEAR_BIT(EXTI->RTSR1, PWR_EXTI_LINE_PVD)
 禁用PVD扩展中断上升沿触发。
#define __HAL_PWR_PVD_EXTI_ENABLE_FALLING_EDGE()   SET_BIT(EXTI->FTSR1, PWR_EXTI_LINE_PVD)
 使能PVD扩展中断下降沿触发。
#define __HAL_PWR_PVD_EXTI_DISABLE_FALLING_EDGE()   CLEAR_BIT(EXTI->FTSR1, PWR_EXTI_LINE_PVD)
 禁用PVD扩展中断下降沿触发。
#define __HAL_PWR_PVD_EXTI_ENABLE_RISING_FALLING_EDGE()
 使能PVD扩展中断上升沿和下降沿触发。
#define __HAL_PWR_PVD_EXTI_DISABLE_RISING_FALLING_EDGE()
 禁用PVD扩展中断上升沿和下降沿触发。
#define __HAL_PWR_PVD_EXTI_GENERATE_SWIT()   SET_BIT(EXTI->SWIER1, PWR_EXTI_LINE_PVD)
 在选定的EXTI线上生成软件中断。
#define __HAL_PWR_PVD_EXTI_GET_FLAG()   (EXTI->PR1 & PWR_EXTI_LINE_PVD)
 检查PVD EXTI中断标志是否设置。
#define __HAL_PWR_PVD_EXTI_CLEAR_FLAG()   WRITE_REG(EXTI->PR1, PWR_EXTI_LINE_PVD)
 清除PVD EXTI中断标志。

宏定义说明

#define __HAL_PWR_CLEAR_FLAG (   __FLAG__)
值:
( (((uint8_t)(__FLAG__)) == PWR_FLAG_WU) ?\
                                         (PWR->SCR  = (__FLAG__)) :\
                                         (PWR->SCR = (1U << ((__FLAG__) & 31U))) )

清除特定的PWR标志。

参数:
__FLAG__:指定要清除的标志。该参数可以是以下值之一:
  • PWR_FLAG_WUF1 唤醒标志1。指示已从WKUP引脚1接收到唤醒事件。
  • PWR_FLAG_WUF2 唤醒标志2。指示已从WKUP引脚2接收到唤醒事件。
  • PWR_FLAG_WUF3 唤醒标志3。指示已从WKUP引脚3接收到唤醒事件。
  • PWR_FLAG_WUF4 唤醒标志4。指示已从WKUP引脚4接收到唤醒事件。
  • PWR_FLAG_WUF5 唤醒标志5。指示已从WKUP引脚5接收到唤醒事件。
  • PWR_FLAG_WU 包含所有五个唤醒标志。
  • PWR_FLAG_SB 待机标志。指示系统已进入待机模式。
返回值:

定义于文件 stm32g4xx_hal_pwr.h第215行

#define __HAL_PWR_GET_FLAG (   __FLAG__)
值:
( ((((uint8_t)(__FLAG__)) >> 5U) == 1)  ?\
                                      (PWR->SR1 & (1U << ((__FLAG__) & 31U))) :\
                                      (PWR->SR2 & (1U << ((__FLAG__) & 31U))) )

检查是否设置了特定的PWR标志。

参数:
__FLAG__:指定要检查的标志。该参数可以是以下值之一:
  • PWR_FLAG_WUF1 唤醒标志1。指示已从WKUP引脚1接收到唤醒事件。
  • PWR_FLAG_WUF2 唤醒标志2。指示已从WKUP引脚2接收到唤醒事件。
  • PWR_FLAG_WUF3 唤醒标志3。指示已从WKUP引脚3接收到唤醒事件。
  • PWR_FLAG_WUF4 唤醒标志4。指示已从WKUP引脚4接收到唤醒事件。
  • PWR_FLAG_WUF5 唤醒标志5。指示已从WKUP引脚5接收到唤醒事件。
  • PWR_FLAG_SB 待机标志。指示系统已进入待机模式。
  • PWR_FLAG_WUFI 内部唤醒标志。当在内部唤醒线上检测到唤醒时设置。
  • PWR_FLAG_REGLPS 低功耗稳压器已启动。指示低功耗稳压器是否就绪。
  • PWR_FLAG_REGLPF 低功耗稳压器标志。指示稳压器在主模式下就绪还是在低功耗模式下。
  • PWR_FLAG_VOSF 电压调节标志。指示稳压器在所选电压范围内是否就绪,还是仍在改变到所需电压电平。
  • PWR_FLAG_PVDO 电源电压检测器输出。指示VDD电压是低于还是高于所选的PVD阈值。
  • PWR_FLAG_PVMO3 外设电压监测输出3。指示VDDA电压是低于还是高于PVM3阈值。
  • PWR_FLAG_PVMO4 外设电压监测输出4。指示VDDA电压是低于还是高于PVM4阈值。
返回值:
__FLAG__的新状态(TRUE或FALSE)。

定义于文件 stm32g4xx_hal_pwr.h第193行

#define __HAL_PWR_PVD_EXTI_CLEAR_FLAG ( )    WRITE_REG(EXTI->PR1, PWR_EXTI_LINE_PVD)

清除PVD EXTI中断标志。

返回值:

定义于文件 stm32g4xx_hal_pwr.h第304行

参见 HAL_PWREx_PVD_PVM_IRQHandler()

#define __HAL_PWR_PVD_EXTI_DISABLE_EVENT ( )    CLEAR_BIT(EXTI->EMR1, PWR_EVENT_LINE_PVD)

禁用PVD事件线。

返回值:

定义于文件 stm32g4xx_hal_pwr.h第240行

参见 HAL_PWR_ConfigPVD()