STM32开发笔记27:STM32L0低功耗设计——RTC模块1秒时钟的产生方法

单片机型号:STM32L053R8T6


    在进行低功耗设计时,使用外部中断唤醒CPU是一个非常有用而且有效的方法,但是在某些特定的应用中,我们还希望CPU能够自己醒来去完成一些特定的操作,这就需要用到RTC模块,因为RTC模块在CPU进入低功耗状态后,是还可以工作的。使用RTC,也需要得到一个最小时间间隔,一般我们将其设置为1秒,本文介绍如何设置RTC的这个最小时间间隔。

    先来看一下时钟图,RTC可以采用两个时钟模块,1个是外部的低频晶振,一般我们选择32.768KHz,这个比较精准;另一个则是内部的RC振荡器,是37KHz。

STM32开发笔记27:STM32L0低功耗设计——RTC模块1秒时钟的产生方法_第1张图片

    STM32L0的预分频器被分成两个预分频器。一个7位的异步预分频器(AsynchPrediv),一个13位同步预分频器(SynchPrediv)。

    RTC频率的计算公式:RTCclk=(LSE或LSI)/[(AsynchPrediv+1)*(SynchPrediv+1)]。

    给出2组经典值:    LSE    RTCclk = 32768/(127+1)*(255+1)=1Hz    AsynchPrediv = 127    SynchPrediv = 255

                                  LSI     RTCclk = 37000/(124+1)*(295+1)=1Hz    AsynchPrediv = 124    SynchPrediv = 295

 

 

原创性文章,转载请注明出处      

CSDN:http://blog.csdn.net/qingwufeiyang12346

 

 

 

 

你可能感兴趣的:(#,STM32快速开发,STM32快速开发)