1.主要特性
①可编程的预分频系数:分频系数最高为220。
②32位的可编程计数器,可用于较长时间段的测量。
③2个分离的时钟:用于APB1接口的PCLK1和RTC时钟(RTC时钟的频率必须小于PCLK1时钟频率的1/4以上)。
④可以选择以下三种RTC的时钟源:HSE时钟除以128;LSE振荡器时钟;LSI振荡器时钟。
⑤2个独立的复位类型:APB1接口由系统复位;RTC核心(预分频器、闹钟、计数器和分频器)只能由后备域复位。
⑥3个专门的可屏蔽中断:闹钟中断,用来产生一个软件可编程的闹钟中断;秒中断,用来产生一个可编程的周期性中断信号(最长可达1秒);溢出中断,指示内部可编程计数器溢出并回转为0的状态。
2.RTC工作原理
在STM32F10xx中,RTC是挂载在APB1总线上的。但是这个APB1总线并不直接给RTC提供时钟源,它只是提供读写操作的,通过APB1接口可以访问RTC的相关寄存器(预分频值,计数器值,闹钟值)。而RTC的计数时钟源可以来自于以下三种。(www.daowen.com)
①HSE时钟除以128。
②LSE振荡器时钟。
③LSI振荡器时钟。
HSE来自于高速的外部时钟,精度较高;LSE为外部固定晶振产生(32.768KHz),一般用于RTC;LSI为内部RC振荡器(40KHz)产生,被用于RTC时钟或者独立看门狗时钟IWDGCLK。
简化的RTC工作框图如图4.31所示。
图4.31 简化的RTC工作框图
RTC内核完全独立于APB1接口,软件通过APB1接口对RTC相关寄存器访问。但是相关寄存器只在RTC APB1时钟进行重新同步的RTC时钟的上升沿被更新。所以软件必须先等待寄存器同步标志位(RTC_CRL的RSF位)被硬件置1才读。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。