单片机stm32之时钟树以及修改系统时钟频率

  前言:在学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.当使用某一个外设时,一定要打开他的时钟使能。因为在总图中我们可以看到最后每一个出口处都有一个使能开关。。

最后在给大家分享些关于stm32的资料可以进一步参考

(时钟系统)
http://www.makeru.com.cn/live/1392_1082.html?s=45051

(STM32中断系统)
http://www.makeru.com.cn/live/1392_1124.html?s=45051

 

posted @ 2019-09-25 10:59  奔跑的蜗牛01  阅读(1091)  评论(0编辑  收藏  举报