正点原子战舰v3笔记(3)时钟系统

重要的时钟
SYSCLK (系统时钟)
AHB 总线时钟
APB1 总线时钟 (低速) :速度最高36MHz
APB2 总线时钟 (高速) :速度最高72MHz
PLL时钟

时钟寄存器配置
正点原子战舰v3笔记(3)时钟系统

  1. STM32 有5个时钟源:HSI、HSE、LSI、LSE、PLL。
      ①、HSI是高速内部时钟,RC振荡器,频率为8MHz,精度不高。
       ②、HSE是高速外部时钟,可接石英/陶瓷谐振器,或者接外部时
    钟源,频率范围为4MHz~16MHz。
       ③、LSI是低速内部时钟,RC振荡器,频率为40kHz,提供低功耗时钟。WDG
     uc1 ④、LSE是低速外部时钟,接频率为32.768kHz的石英晶体。RTC
     uc1 ⑤、PLL为锁相环倍频输出,其时钟输入源可选择为HSI/2、HSE或者HSE/2。
    倍频可选择为2~16倍,但是其输出频率最大不得超过72MHz。
  2. 系统时钟SYSCLK可来源于三个时钟源:
    ①、HSI振荡器时钟
    ②、HSE振荡器时钟
    ③、PLL时钟
    3.STM32可以选择一个时钟信号输出到MCO脚(PA8)上,可以选择为PLL
    输出的2分频、HSI、HSE、或者系统时钟。

4.任何一个外设在使用之前,必须首先使能其相应的时钟。

正点原子战舰v3笔记(3)时钟系统

常用的外设时钟使能 ,AHBENR , APB2ENR , APB1ENR ,

CR 时钟源使能就绪标志位 , 开启之后 还需要等待就绪, 就绪位稳定了

CFGR 时钟源选择 , 配置系数

这些时钟寄存器的配置实际上是提供了库函数的,
头文件 stm32f10x_rcc.h
源文件 stm32f10x_rcc,c

⦁ 时钟使能配置:
RCC_LSEConfig() 、RCC_HSEConfig()、
RCC_HSICmd() 、 RCC_LSICmd() 、 RCC_PLLCmd() ……

⦁ 时钟源相关配置:
RCC_PLLConfig ()、 RCC_SYSCLKConfig() 、
RCC_RTCCLKConfig() …

⦁ 分频系数选择配置:
RCC_HCLKConfig() 、 RCC_PCLK1Config() 、 RCC_PCLK2Config()…

⦁ 外设时钟使能:
RCC_APB1PeriphClockCmd(): //APB1线上外设时钟使能
RCC_APB2PeriphClockCmd(); //APB2线上外设时钟使能
RCC_AHBPeriphClockCmd(); //AHB线上外设时钟使能

  1. 其他外设时钟配置:
    RCC_ADCCLKConfig (); RCC_RTCCLKConfig();

⦁ 状态参数获取参数:
RCC_GetClocksFreq();
RCC_GetSYSCLKSource();
RCC_GetFlagStatus()
⦁ RCC中断相关函数 :
RCC_ITConfig() 、 RCC_GetITStatus() 、 RCC_ClearITPendingBit()…