前言:在学51的时候我们知道单片机想要工作必须要有时钟,在stm32中,外部时钟源不是必须的,因为内部就有时钟源,因此我们需要了解stm32的时钟树以方便以后我们设置自己所需要的时钟频率
时钟树
解读
1.首先我们找到最重要的系统时钟:
他的最高频率为168MHZ,他可以由三个提供,一个是HSI(内部高速时钟源,h=high,i=internal),可以在主图中找到这个HSI RC,还有一个是HSE(外部高速时钟源,e=external),最后一个是PLLCLK(pll为锁相环提供,也可以在主图中找到)。。但系统时钟主要还是由PLLCLK提供
注意:
是指这个东西可以由三个其中之一提供,而不是由三个组成。
2.既然系统时钟主要是由PLLCLK提供,那PLLCLK是怎么产生的呢?我们往前看,可知PLLCLK是由锁相环产生。那锁相环的输入是什么?继续往前看可知是由外部的高速时钟源,而外部时钟源是接在osc_out osc_in上,osc_out osc_in对应了stm32的两个针脚
所以到这里我们看图应该知道,当外部提供的的频率一定时,需要改变M N这些倍频分频的系数来实现改变系统时钟的频率
补充
1.
我们可以从图中看到:
这两个对应了芯片的两个管脚,他们是用来接外设时给外设提供时钟频率的。即用系统内部的时钟
2.当使用某一个外设时,一定要打开他的时钟使能。因为在总图中我们可以看到最后每一个出口处都有一个使能开关。。