STM32学习心得七:STM32时钟系统框图及相关函数解读

typedef struct
{
          
   
  __IO uint32_t CR;                //HSI,HSE,CSS,PLL等的使能和就绪标志位 
  __IO uint32_t CFGR;             //PLL等的时钟源选择,分频系数设定
  __IO uint32_t CIR;               // 清除/使能 时钟就绪中断
  __IO uint32_t APB2RSTR;        //APB2线上外设复位寄存器
  __IO uint32_t APB1RSTR;        //APB1线上外设复位寄存器
  __IO uint32_t AHBENR;          //DMA,SDIO等时钟使能 
  __IO uint32_t APB2ENR;         //APB2线上外设时钟使能 
  __IO uint32_t APB1ENR;         //APB1线上外设时钟使能
  __IO uint32_t BDCR;            //备份域控制寄存器
  __IO uint32_t CSR;             //控制状态寄存器
} RCC_TypeDef;

4. RCC相关头文件和固件库源文件 4.1 时钟使能配置: RCC_LSEConfig() 、RCC_HSEConfig()、RCC_HSICmd() 、 RCC_LSICmd() 、 RCC_PLLCmd() …… 4.2 时钟源相关配置: RCC_PLLConfig ()、 RCC_SYSCLKConfig() 、RCC_RTCCLKConfig() … 4.3 分频系数选择配置: RCC_HCLKConfig() 、 RCC_PCLK1Config() 、 RCC_PCLK2Config()… 4.4 外设时钟使能:

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

4.5 其他外设时钟配置: RCC_ADCCLKConfig()、RCC_RTCCLKConfig(); 4.6 状态参数获取参数: RCC_GetClocksFreq()、RCC_GetSYSCLKSource()、RCC_GetFlagStatus(); 4.7 RCC中断相关函数: RCC_ITConfig()、 RCC_GetITStatus() 、 RCC_ClearITPendingBit()… 旧知识点: 1)复习寄存器地址,可参考和; 2)复习寄存器地址名称映射,可参考。

经验分享 程序员 微信小程序 职场和发展