APM32E030的内部时钟源有两个:HSICLK(高速内部时钟信号) 和 LSICLK(低速内部时钟信号)。
LSICLK由RC振荡器产生,中间频率为40KHz,受温度影响,实际运行频率范围约为30K-50KHz之间。
LSICLK的主要特性是可以在停机和待机模式下保持运行,为独立看门狗(IWDT) 和实时时钟(RTC) 提供时钟。所以,使用到LSI时钟源的外设只有两个:IWDT和RTC。APM32E030的时钟树如下图所示:
LSI时钟在上电复位后默认为关闭状态,其打开有两种方式:主动打开和强制打开。
主动打开
通过控制/状态寄存器 RCM_CSTS 的 LSIEN 位来启动或关闭。在RCM_CSTS 里的 LSIRDY** 位指示低速内部振荡器是否稳定。在启动阶段,直到这个位被硬件设置为“1” 后,时钟才被释放。如果在时钟中断寄存器RCM_INT 里被允许,将产生 LSICLK 中断申请。
强制打开
当 IWDT(独立看门狗)启动时, LSICLK 振荡器将被强制打开,等到稳定后把时钟信号供给 IWDT。 LSICLK 在被强制打开后,将一直处于打开状态,不能被关闭。
检测LSI
上面我们谈到了LSI受温度影响较大,但当前的LSI的频率或者运行情况如何?除了从状态位可以观察到LSI是否启动,还可以通过MCO引脚来实际测量到当前LSI的运行频率。
综上,LSI时钟源的使用专一而简明。熟练掌握这些知识点与功能点可以让MCU在我们的项目里更游刃有余。
|