一、时钟源的基本概念
1.STM32 有5个时钟源:HSI、HSE、LSI、LSE、PLL。
-
HSI(High Speed Internal)是高速内部时钟,RC振荡器,频率为16MHz,精度不高。可以直接作为系统时钟或者用作PLL时钟输入。
-
HSE(High Speed External)是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时钟源,频率范围为4MHz~26MHz。
-
LSI(Low Speed Internal)是低速内部时钟,RC振荡器,频率为32kHz,提供低功耗时钟。主要供独立看门狗和自动唤醒单元使用。
-
LSE(Low Speed External)是低速外部时钟,接频率为32.768kHz的石英晶体。RTC。
-
PLL为锁相环倍频输出。
2.系统时钟SYSCLK可来源于三个时钟源:
- HSI振荡器时钟
- HSE振荡器时钟
- PLL时钟
3.任何一个外设在使用之前,必须首先使能其相应的时钟。
二、STM32F4系列时钟树
三、RCC相关配置寄存器
typedef struct
{
__IO uint32_t CR;
__IO uint32_t PLLCFGR;
__IO uint32_t CFGR; /*!< RCC clock configuration register, Address offset: 0x08 */
__IO uint32_t CIR; /*!< RCC clock interrupt register, Address offset: 0x0C */
__IO uint32_t AHB1RSTR