STM32内部时钟

K.M*_*ier 7 arm clock stm32 cortex-m stm32f7

我对STM32F7器件(STMicroelectronics的Cortex-M7微控制器)上的时钟系统感到困惑.参考手册没有充分说明这些时钟之间的差异:

  • SYSCLK
  • HCLK
  • FCLK

参考手册在"5.2时钟>> "章节中读取."RCC通过AHB时钟(HCLK)除以8来提供Cortex系统定时器(SysTick)的外部时钟".
这个陈述与CubeMX的数字相矛盾.请注意,在CubeMX中,我可以选择从HCLK到'Cortex系统定时器'的预分频器.它不一定是8分.

在此输入图像描述

Dri*_*512 8

通常,HCLK和之间唯一的区别FCLK是:

  • HCLK是主CPU时钟,也用于AHB接口.它可以在CPU休眠时进行门控(例如WFI)
  • FCLKHCLK当CPU进入休眠状态时,它是同步但不是门控,因此在中断的情况下它可以唤醒.

  • 门控意味着它通过一个门.特别是AND门,查看RCC寄存器中的所有时钟使能位,这些单独外设/逻辑块的各个位基本上与时钟进行"与"运算(有时是反向的).停止逻辑块上的时钟边缘可以节省大量功率,并且在"微控制器"中非常常见.很难将一个称为cortex-m7的微控制器,但确实属于该类. (3认同)