时钟树

在哪里可以找到相关资料

  • 时钟树图----参考手册的6.2时钟章节

  • 哪些外设用了哪个时钟--参考手册2.1系统构架小节

时钟来源

共有4个时钟来源,序号1--HSI内部高速时钟,序号2--HSE外部高速,序号3-LSE低速外部,序号4--LSI低速内部,如何区分:

H代表High高速,E代表Extern外部,I代表Interal内部

区别总结如下:

注意:

  • 系统时钟源只能使用高速源,低速源只能用作RTC

总结如下表

RTC RCC 滴答定时器 系统时钟

  • RTC是实时时钟,简单来说我们涉及到时钟,日历,闹钟的设计,一般要求精度高,有外部低速时首选外部低速需要用到这个外设寄存器,若无外部低速,可以选择外部高速

  • RCC是复位和时钟控制寄存器,管理着大部分外设的时钟,比如APB1,APB2总线上的外设

  • 滴答定时器(Systick),产生精准的定时,常用于FreeRTOS,以及延迟函数,在时钟树末端有一个至Coretx系统时钟其实表示的就是Systick而不是系统时钟

  • 系统时钟,实际上在时钟树上表示SYSCLK

时钟树分析

怎么看时钟树

序号1处的梯形图标实际上表示了一个选择器,选择输入源,在实际操作中对应了寄存器,以1为例,我们可以选择以外部高速时钟源以1倍频(原来的频率)还是/2的频率输入后续的时钟链路

分析系统时钟SYSCLK的时钟链路

以正点原子的为例,使用8M的外部晶振作为高速时钟源,进来后在PLLXTPRE的分叉口选择不直接输入SW选择器,也不以/2的频率进入PLLXTPRE,而是以8M完整的频率进入PLLXTPRE,然后来到PLLSRC进入PLLMUL,以9倍频,即72M输出来到SW选择器,SW选择器以PLLCLK为输入源,即我们倍频得到的72M作为系统时钟的来源,供给后续链路

时钟树简图

原版时钟树较复杂,可简化如下,如:SYSCLK可以选择来自HSI的原生输入,也可以来自HSE的原生输入,也可以选择来自PLL的2-16倍频。

MCO CSS FCLK

MCO可以用以向外部输出时钟,引脚复用在PA8上

CSS时钟安全系统,如果HSE启动失败,切换到HSI,可进NMI中断

FCLK自由运行时钟,用于采样中断和调试模块计时,休眠仍有效

Last updated