STM32的时钟系统是指其内部的时钟源、时钟分配和时钟配置的机制,它决定了STM32的工作频率和外设的运行速度。
STM32的时钟系统有以下几个特点:
- STM32有五个时钟源,分别是高速内部时钟HSI(8MHz)、高速外部时钟HSE(4-16MHz)、低速内部时钟LSI(40kHz)、低速外部时钟LSE(32.768kHz)和锁相环倍频输出PLL(8-128MHz)。
- STM32的系统时钟SYSCLK可以选择HSI、HSE或PLL作为输入源,它是供STM32中绝大部分部件工作的时钟源。系统时钟最大频率为72MHz。
- STM32的系统时钟SYSCLK经过AHB分频器后,可以分别输出给AHB总线、内核、内存和DMA使用的HCLK时钟,Cortex的系统定时器使用的Systick时钟,Cortex的空闲运行时钟FCLK,以及APB1和APB2分频器。
- STM32的APB1和APB2分频器分别输出给低速外设和高速外设使用的PCLK1和PCLK2时钟,以及定时器使用的Timer时钟。APB1和APB2的外设时钟最大频率分别为36MHz和72MHz。
- STM32的时钟系统可以通过寄存器进行配置,也可以使用STM32的固件库提供的函数进行配置。STM32的固件库提供了五种系统时钟的配置,分别为24MHz、36MHz、48MHz、56MHz和72MHz。