STM32L4时钟系统

时钟系统概述

定义
时钟系统,它是由振荡器(信号源)、定时唤醒器、分频器等组成的电路。
常用的信号源有晶体振荡器和RC振荡器。
功能
时钟是嵌入式系统的脉搏,处理器内核在时钟驱动下完成指令执行,状态变换等动作;
外设部件在时钟的驱动下完成各种工作,比如串口数据的发送、A/D转换、定时器计数等。

SMT32L4中有多个时钟源,原因如下:

  • STM32本身非常复杂,外设非常多;
  • 并不是所有的外设都需要系统时钟这么高的频率,比如看门狗以及RTC只需要几十k的时钟即可;
  • 同一个电路,时钟越快功耗越大,同时抗电磁干扰能力也会越弱,所以对于较复杂的MCU一般采用多时钟源的方法来解决这个问题。

时钟系统图

在这里插入图片描述

时钟源分析

如上图所示,STM32L4中,有6重要的时钟源,为HSI、HSE、LSI、LSE、MSI、PLL,其中PLL实际分为三个时钟源,分别为主PLL、PLLISAI1和PLLSAI2。
从时钟频率来分可以分为高速时钟源和低速时钟源;从时钟频率来分可以分为高速时钟源和低速时钟源;从来源可分为外部时钟源和内部时钟源,外部时钟源就是从外部通过接晶振的方式获取时钟源。

  1. LSI 是低速内部时钟,** RC 振荡器**,频率为 32kHz 左右。供独立看门狗、 RTC 和 LCD使用。
  2. LSE 是低速外部时钟,接频率为 32.768kHz 的石英晶体。这个主要是 RTC 的时钟源。
  3. HSE 是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHz-48MHz。我们的开发板接的是 8MHz 的晶振。 HSE 也可以直接做为系统时钟或者 PLL 输入
  4. HSI 是高速内部时钟,** RC 振荡器**, 频率为 16MHz。可以直接作为系统时钟或者用作PLL 输入。
  5. MSI 时钟信号由内部 RC 振荡器产生。其频率范围可通过时钟控制寄存器(RCC_CR)中的 MSIRANGE[3:0]位进行调整。
  6. PLL 为锁相环倍频输出。STM32L4有三个PLL:
    • 主 PLL(PLL)可由 HSE、 HIS 或者 MSI 提供时钟信号,并具有三个不同的输出时钟:
      ** 1) 输出PLLR**,用于生成高速的系统始终(SYSTEM,最高80MHz);
      ** 2)输出PLLQ**,可为USB、RNG和SDMMC提供时钟源;
      ** 3)输出PLLP**,可用于SAI1和SAI2时钟。
    • PLLSAI1 用于生成精确时钟,同样具有三个不同的输出时钟。
      ** 1) 输出 PLLSAI1P**,可用于 SAI1 和 SAI2 时钟;
      ** 2)输出 PLLSAI1Q**,可为USB、RNG和SDMMC提供时钟源;
      ** 3)输出 PLLSAI1R**,可为 ADC 提供时钟。
    • PLLSAI2 用于生成精确时钟,具有两个不同的输出时钟。
      ** 1) 输出 PLLSAI2P**,可用于 SAI1 和 SAI2 时钟;
      ** 2)输出 PLLSAI2R**,可为 ADC 提供时钟;
      主PLL时钟图如下:
      在这里插入图片描述
      从图中可以看出,主 PLL 的时钟源要先经过一个分频系数为 M 的分频器,然后经过倍频
      系数为 N 的倍频器,出来之后还需要经过分频系数为 R(输出 PLLR 时钟)、或者 P(输出 PLLP
      时钟)、或者 Q(输出 PLLQ 时钟),最后才生成最终的主 PLL 时钟。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值