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

宏定义

#define __HAL_LPTIM_RESET_HANDLE_STATE(__HANDLE__)
 重置LPTIM句柄状态。
#define __HAL_LPTIM_ENABLE(__HANDLE__)   ((__HANDLE__)->Instance->CR |= (LPTIM_CR_ENABLE))
 使能LPTIM外设。
#define __HAL_LPTIM_DISABLE(__HANDLE__)   LPTIM_Disable(__HANDLE__)
 禁用LPTIM外设。
#define __HAL_LPTIM_START_CONTINUOUS(__HANDLE__)   ((__HANDLE__)->Instance->CR |= LPTIM_CR_CNTSTRT)
 以连续模式启动LPTIM外设。
#define __HAL_LPTIM_START_SINGLE(__HANDLE__)   ((__HANDLE__)->Instance->CR |= LPTIM_CR_SNGSTRT)
 以单次模式启动LPTIM外设。
#define __HAL_LPTIM_RESET_COUNTER(__HANDLE__)   ((__HANDLE__)->Instance->CR |= LPTIM_CR_COUNTRST)
 在同步模式下重置LPTIM计数器寄存器。
#define __HAL_LPTIM_RESET_COUNTER_AFTERREAD(__HANDLE__)   ((__HANDLE__)->Instance->CR |= LPTIM_CR_RSTARE)
 在异步模式下读取后重置LPTIM计数器寄存器。
#define __HAL_LPTIM_AUTORELOAD_SET(__HANDLE__, __VALUE__)   ((__HANDLE__)->Instance->ARR = (__VALUE__))
 将传递的参数写入自动重装载寄存器。
#define __HAL_LPTIM_COMPARE_SET(__HANDLE__, __VALUE__)   ((__HANDLE__)->Instance->CMP = (__VALUE__))
 将传递的参数写入比较寄存器。
#define __HAL_LPTIM_GET_FLAG(__HANDLE__, __FLAG__)   (((__HANDLE__)->Instance->ISR &(__FLAG__)) == (__FLAG__))
 检查指定的LPTIM标志是否已设置。
#define __HAL_LPTIM_CLEAR_FLAG(__HANDLE__, __FLAG__)   ((__HANDLE__)->Instance->ICR = (__FLAG__))
 清除指定的LPTIM标志。
#define __HAL_LPTIM_ENABLE_IT(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->IER |= (__INTERRUPT__))
 使能指定的LPTIM中断。
#define __HAL_LPTIM_DISABLE_IT(__HANDLE__, __INTERRUPT__)   ((__HANDLE__)->Instance->IER &= (~(__INTERRUPT__)))
 禁用指定的LPTIM中断。
#define __HAL_LPTIM_GET_IT_SOURCE(__HANDLE__, __INTERRUPT__)
 检查指定的LPTIM中断源是否已使能。
#define __HAL_LPTIM_WAKEUPTIMER_EXTI_ENABLE_IT()
 使能LPTIM唤醒定时器关联的Exti线路中断。
#define __HAL_LPTIM_WAKEUPTIMER_EXTI_DISABLE_IT()
 禁用LPTIM唤醒定时器关联的Exti线路中断。
#define __HAL_LPTIM_WAKEUPTIMER_EXTI_ENABLE_EVENT()
 使能LPTIM唤醒定时器关联的Exti线路事件。
#define __HAL_LPTIM_WAKEUPTIMER_EXTI_DISABLE_EVENT()
 禁用LPTIM唤醒定时器关联的Exti线路事件。

宏定义文档

#define __HAL_LPTIM_AUTORELOAD_SET (   __HANDLE__,
  __VALUE__ 
)    ((__HANDLE__)->Instance->ARR = (__VALUE__))

将传递的参数写入自动重装载寄存器。

参数:
__HANDLE__LPTIM句柄
__VALUE__自动重装载值 此参数必须是介于Min_Data = 0x0001和Max_Data = 0xFFFF之间的值。
返回值:
注意:
只有当LPTIM实例被使能时,才能修改ARR寄存器。

定义于文件 stm32g4xx_hal_lptim.h455行。

被以下函数引用:HAL_LPTIM_Counter_Start(), HAL_LPTIM_Counter_Start_IT(), HAL_LPTIM_Encoder_Start(), HAL_LPTIM_Encoder_Start_IT(), HAL_LPTIM_OnePulse_Start(), HAL_LPTIM_OnePulse_Start_IT(), HAL_LPTIM_PWM_Start(), HAL_LPTIM_PWM_Start_IT(), HAL_LPTIM_SetOnce_Start(), HAL_LPTIM_SetOnce_Start_IT(), HAL_LPTIM_TimeOut_Start(), 和 HAL_LPTIM_TimeOut_Start_IT()

#define __HAL_LPTIM_CLEAR_FLAG (   __HANDLE__,
  __FLAG__ 
)    ((__HANDLE__)->Instance->ICR = (__FLAG__))

清除指定的LPTIM标志。

参数:
__HANDLE__LPTIM句柄。
__FLAG__要清除的LPTIM标志。此参数可以是以下值之一:
  • LPTIM_FLAG_DOWN : 计数器方向变化向上标志。
  • LPTIM_FLAG_UP : 计数器方向从向下变为向上标志。
  • LPTIM_FLAG_ARROK : 自动重装载寄存器更新OK标志。
  • LPTIM_FLAG_CMPOK : 比较寄存器更新OK标志。
  • LPTIM_FLAG_EXTTRIG : 外部触发边沿事件标志。
  • LPTIM_FLAG_ARRM : 自动重装载匹配标志。
  • LPTIM_FLAG_CMPM : 比较匹配标志。
返回值:
无。

定义于文件 stm32g4xx_hal_lptim.h496行。

被以下函数引用:HAL_LPTIM_Counter_Start(), HAL_LPTIM_Counter_Start_IT(), HAL_LPTIM_Encoder_Start(), HAL_LPTIM_Encoder_Start_IT(), HAL_LPTIM_IRQHandler(), HAL_LPTIM_OnePulse_Start(), HAL_LPTIM_OnePulse_Start_IT(), HAL_LPTIM_PWM_Start(), HAL_LPTIM_PWM_Start_IT(), HAL_LPTIM_SetOnce_Start(), HAL_LPTIM_SetOnce_Start_IT(), HAL_LPTIM_TimeOut_Start(), HAL_LPTIM_TimeOut_Start_IT(), 和 LPTIM_Disable()

#define __HAL_LPTIM_COMPARE_SET (   __HANDLE__,
  __VALUE__ 
)    ((__HANDLE__)->Instance->CMP = (__VALUE__))

将传递的参数写入比较寄存器。

参数:
__HANDLE__LPTIM句柄
__VALUE__比较值
返回值:
注意:
只有当LPTIM实例被使能时,才能修改CMP寄存器。

定义于文件 stm32g4xx_hal_lptim.h464行。

被以下函数引用:HAL_LPTIM_OnePulse_Start(), HAL_LPTIM_OnePulse_Start_IT(), HAL_LPTIM_PWM_Start(), HAL_LPTIM_PWM_Start_IT(), HAL_LPTIM_SetOnce_Start(), HAL_LPTIM_SetOnce_Start_IT(), HAL_LPTIM_TimeOut_Start(), 和 HAL_LPTIM_TimeOut_Start_IT()

#define __HAL_LPTIM_DISABLE (   __HANDLE__)    LPTIM_Disable(__HANDLE__)

禁用LPTIM外设。

参数:
__HANDLE__LPTIM句柄
注意:
需要以下序列来解决LPTIM禁用的硬件限制。请查看Errata Sheet ES0335中"MCU在进入停止模式时可能会卡在LPTIM中断"章节以了解更多详细信息。
请在调用__HAL_LPTIM_DISABLE之后调用HAL_LPTIM_GetState()以检查超时。
返回值: