时钟--单片机的心跳

文章介绍了STM32的时钟系统,包括HSI、HSE、LSI、LSE四种时钟源,以及PLL锁相环的工作原理。系统时钟通过AHB预分频器分配给APB1和APB2总线上的不同外设,其中APB1服务于低速外设,APB2服务于高速外设。配置时通常选择PLL作为系统时钟源,并使用CUBEMX进行配置。
摘要由CSDN通过智能技术生成

什么是时钟

时钟,可以理解为人的心跳,它确定着系统的运行速度,也即我们外设的运行速度,时钟越快功耗越大,所以在32的时钟系统比较复杂,为的是降低功耗,这部分外设我们称为:RCC (reset clock control 复位和时钟控制器)。

系统框图刨析

image-20221228222743278

系统时钟(SYSCLK)

image-20221228222943178

系统时钟来源可以是:HSI、PLLCLK、HSE,然后系统时钟在通过AHB预分频器分频给到不同外设总线,比如APB1 APB2…最大为72Mhz,所以我们现在要来看的就是这三个时钟源(总共五个,下面一一列举)

时钟源

HSE 外部高速时钟信号

可以由有源或无源晶振提供,一般是4-16MHZ,如果选择有源晶振,时钟从OSC_IN进入,无源时,从OSC_IN 和OSC_OUT进入,一般接入8M的无源晶振。

image-20221228224242749

HSI 内部高速时钟信号

HSI 是高速内部时钟,RC 振荡器,频率为 8MHz

image-20221228231816071

LSI

LSI 是低速内部时钟,RC 振荡器,频率为 40kHz。独立看门狗的时钟源只能是 LSI,同 时 LSI 还可以作为 RTC 的时钟源。

image-20221228233215882

LSE

LSE 是低速外部时钟,接频率为 32.768kHz 的石英晶体,主要作为RTC的时钟源

image-20221228233401577

PLL

PLL 为锁相环倍频输出,其时钟输入源可选择为 HSI/2、HSE 或者 HSE/2。倍频可选择为2~16 倍,但是其输出频率最大不得超过 72MHz

image-20221228233608126

image-20230101155741021

MCO 是 STM32 的一个时钟输出 IO(PA8),它可以选择一个时钟信号输出,这个可以用于给外部系统提供时钟

分频给到各个外设使用

image-20230101160409955

当系统时钟确实了使用哪个时钟源之后,接下来就要经过AHB预分频器,接着就是各个分支上的预分频器,以APB1预分频器为例,如果分频系数是2,那就要将当前频率除以2.

其中需要理解的是 APB1 和 APB2 的区别,APB1 上面连接的是低速外设,包括电源接口、备份接口、CAN、USB、I2C1、I2C2、UART2、UART3 等等,APB2 上面连接的是高速外设包括 UART1、SPI1、Timer1、ADC1、ADC2、所有普通 IO 口(PA~PE)、第二功能 IO 口等。

使用CUBEMX配置

image-20230101162802939

选择HSE和LSE的激励源,因为这两都是靠外部激励工作的,这里直接选晶振

image-20230101164516727

image-20230101163813543

(img-HHzZYRSc-1672562909433)]

[外链图片转存中…(img-1zzPrZAD-1672562909434)]

配置的话就按从左往右顺序来,记得考虑一些时钟的最大值,然后主要就是做点乘除运算而已,一般系统时钟来源我们选择PLL。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值