STM32时钟系统

认识时钟树

在这里插入图片描述

1.1什么是时钟

在这里插入图片描述
在这里插入图片描述
每个振荡器都对应着右边的图片 外部就是芯片外部的晶振(接入芯片内部) 内部振荡器就是在芯片内部的
在这里插入图片描述
HSE 和HSI都是高速的振荡器 外部的可以提供4-16MHZ的晶振 内部可提供8MHZ的晶振 SYSCLK是系统的内部时钟 他的晶振是72MHZ HSE和HSI通过锁相环使得晶振频率增加到72MHZ
外部振荡器HSE可以有两条路到系统的内部时钟(大部分使用的都是外部晶振 内部的太小了通过了锁相环后无法达到72MHZ) 然后到达HCLK(AHB总线) 有前面的学习可知 AHB总线也挂载着外设 内核的时钟也是由HCLK提供的 AHB总线通过桥分为APB1和APB2(两个都挂载着外设)SYSCLK通过分频到达HCLK HCLK通过分频到达APB1 APB2
LSI 和LSE都是低速晶振
右下角的四个函数 通过调用这些函数从而改变分频、锁相环 使得各个部分的时钟得以配置 还有外设的时钟得以配置
在这里插入图片描述
外部时钟通过选择器(选择器通过寄存器来编写选择位) 走1通道 (如果走2通道就要分频 8变为4)然后再到一个选择器通过锁相器到达系统的时钟 (系统时钟的三条线代表着三个来源)然后通过选择器在到达AHB总线(不分频) AHB总线通过桥分为APB1 APB2 (AHB总线位72MHZ)但是APB1的时钟是36MHZ通过了二分频(选择器)外设线要使能时钟才能使用(不然时钟无法到达外设)在这里插入图片描述
AHB总线为72MHZ通过分屏(8分频)到达系统时钟)(9MHZ)然后到HCLK为72MHZ
在这里插入图片描述
定时器的时钟系统 :定时器2-7挂载在APB1总线上 (最大36MHZ)如果要使得时钟为72MHZ要经过倍频器
下面的TIM1和8定时器挂载在APB2总线上 最大时72MHZ
在这里插入图片描述
外设时钟 要使用一个外设首先要给外设的时钟使能在这里插入图片描述
看门狗由内部低速振荡器提供时钟 (需要的精度不是很高) RTC一个外设(时钟由外部高速振荡器提供 需求的精度高) 外部时钟比内部时钟的精度要高

STM32CubeMX时钟树(F103)

在这里插入图片描述
到F4在详细介绍

认识时钟树在这里插入图片描述

F4时钟简图
在这里插入图片描述
HSE(外部) 和HSI(内部) 高速晶振 通过分频(/M)锁相环到达SYSCLK系统时钟F407:168MHZ 通过分频到达AHB总线 AHB总线通过桥到达APB1 和APB2 (也有分屏) 为外设提供时钟 右下脚的函数是配置SYSCLK时钟的来源和其他总线的时钟的
在这里插入图片描述
首先外部振荡器HSE经过线到达第一个选择器然后/M(分频)进入第一个锁相环 PLL到达VCO(V代表电压 C代表震荡 O代表稳定 电压震荡稳定器)到达VCO这个中枢有下面的*n (倍频)然后出VCO有三条路(都是分频)/P /Q /R(/R没用) /P后进入系统时钟到达SYSCLK /Q为外设提供时钟(要使用外设要先给外设时钟使能)
在这里插入图片描述
系统时钟SYSCLK到达AHB总线AHB总线经过桥到达APB1 和APB2 (这里统称APBX)
在F407系列中APB1为42MZH APB2为84MHZ 总系统时钟168MHZ经过分频后(APB1分4 APB2分2) 给外设时钟 挂载在APB1 和APB2总线上的定时器得到时钟 (可以去芯片手册查询挂载在APB1 和APB2 上的定时器)
然后AHB总线还可以通过上面的选择器给予FLASH SRAM(储存器)时钟 还可分频(/8)给内核时钟
在这里插入图片描述
上面的RTC优先使用外部低速振荡器获得时钟 要是外部低速振荡器挂了就启用外部高速振荡器
CubeMX时钟树图在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值