STM32 MCU的系统时钟树是指STM32微控制器的运行时钟由不同的时钟源和分频器组成的复杂网络,它决定了STM32的内核和外设的工作频率和性能。STM32 MCU系统时钟树分为以下几个部分:
- 时钟源:STM32 MCU有五个重要的时钟源,分别是高速内部时钟(HSI)、高速外部时钟(HSE)、低速内部时钟(LSI)、低速外部时钟(LSE)和锁相环时钟(PLL)。这些时钟源可以提供不同的频率和稳定性,用于不同的应用场景。
- 系统时钟(SYSCLK):系统时钟是STM32 MCU的主要时钟,它可以选择HSI、HSE或PLL作为输入源,最高可达72MHz。系统时钟提供给AHB总线和Cortex-M3内核,决定了CPU的主频。
- AHB总线时钟(HCLK):AHB总线时钟是由系统时钟经过AHB预分频器得到的,最高可达72MHz。AHB总线时钟提供给存储器、DMA和其他高速外设,如GPIO、ADC等。
- APB1和APB2总线时钟(PCLK1和PCLK2):APB1和APB2总线时钟是由AHB总线时钟经过APB1和APB2预分频器得到的,最高分别为36MHz和72MHz。APB1和APB2总线时钟提供给不同的低速外设,如TIM、USART、SPI等。
- RTC时钟:RTC时钟是由LSE、LSI或HSE_RTC作为输入源得到的,用于实时时钟模块。RTC时钟一般选用32.768kHz的晶振作为LSE,方便计算时间。
- MCO时钟输出:MCO时钟输出是由PLL/2、HSE、HSI或SYSCLK作为输入源得到的,用于输出到PA8引脚。MCO时钟输出可以用于测试或者提供给其他设备作为参考。