1.RCC_GetSYSCLKSource库函数
uint8_t RCC_GetSYSCLKSource(void)
{
return ((uint8_t)(RCC->CFGR & CFGR_SWS_Mask));
}
CFGR_SWS_Mask有如下宏定义
#define CFGR_SWS_Mask ((uint32_t)0x0000000C)
对应在CFGR寄存器上即为2~3位,即为SWS,该函数的作用是:查询系统时钟的时钟源。当返回的结果为0x00,则说明系统时钟为HSI
当返回的结果为0x01,则说明系统时钟为HSE
当返回的结果为0x10,则说明系统时钟为PLL
关于SW和SWS
SW用于配置,由软件置位或清零。而SWS相当于标志位,以供查询,由硬件自动置位或清零。