在STM32 STOP2模式下,LPTIM(低功耗定时器)是唯一能保持运行的定时器,但其时钟源(如LSI或LSE)频率通常较低(如32.768kHz或38.4kHz),无法直接实现微秒级分辨率。要实现微秒级定时唤醒,建议采用以下方案:1)使用LSE(32.768kHz)作为LPTIM时钟,通过配置预分频器和比较值,可实现约30.5微秒的粒度,若需更精细,可结合外部高频晶振(如HSE)在进入STOP2前校准LPTIM的计数周期,但注意STOP2下HSE会关闭,因此需依赖LSE的稳定性;2)更实用的做法是:在STOP2模式下,使用LPTIM产生毫秒级唤醒(如1ms),唤醒后快速进入RUN模式,利用SysTick或TIMx(高频时钟)完成微秒级延时,然后再次进入STOP2,这样既满足微秒精度,又不影响RTC(RTC由LSE独立供电,走时不受影响)。实操建议:配置LPTIM为单次计数模式,中断唤醒,并在唤醒后立即关闭LPTIM以省电;同时确保RTC的备份域寄存器配置正确,避免复位。
mcuku 阿沐 · 2026-08-27