| RCC_CFGR_PLLMULL9);// ④ 使能 PLLRCC->CR |= RCC_CR_PLLON;// ⑤ 等待PLL稳定while((RCC->CR & RCC_CR_PLLRDY) ==0) { }// ⑥ 选择PLL作为系统时钟来源RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_SW)); RCC->CFGR |= (uint32_t)RCC_CFGR_SW_PLL;// ⑦ 读取时钟切换状...
其中,输入时钟频率 FREFIN, 可以通过配置 RCC_PLLCFGR[PLLXTPRE] 和 RCC_PLLCFGR[PLLSRC] 进行选择 ,可选项有 HSI 输出时钟频率 、HSE 输出时钟频率以及 HSE 输出时钟的 2 分频频率。配置此项前,需要使能对应的时钟输入源。分频因子 M = RCC_PLLCFGR[PLL_DM] + 1, P = RCC_PLLCFGR[PLL_PM] + 1;...
RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE2_DIV1; /* PCLK1 = HCLK */ RCC->CFGR |= (uint32_t)RCC_CFGR_PPRE1_DIV2; 使能PLL锁相环时钟并设置倍频因子为9(9*8MHz = 72MHz),使能并选择其为系统的时钟源。 /* PLL configuration: PLLCLK = HSE * 9 = 72 MHz */ RCC->CFGR &= (uint32...
2)、选择输出时钟源。 时钟的选择由时钟配置寄存器(RCC_CFGR)。 GPIO_PinAFConfig(GPIOA, GPIO_PinSource8, GPIO_AF_MCO); RCC_MCO1Config(RCC_MCO1Source_HSE, RCC_MCO1Div_1); 参数RCC_MCO为要输出的内部时钟: RCC_MCO_NoClock --- 无时钟输出 RCC_MCO_SYSCLK --- 输出系统时钟(SysCLK) RCC_MCO...
配置时钟 前言 1.CRC相关寄存器 1.1 时钟控制寄存器(RCC_CR) 1.1 时钟配置寄存器(RCC_CFGR) 2.系统时钟讲解 2.1 HSE:高速外部时钟 2.2 PLL 时钟源 2.3 PLL 时钟 PLLCLK 2.4 系统时钟 SYSCLK 2.5 AHB 总线时钟 HCLK 2.6 APB2 总线时钟 HCLK2 2.7 APB1 总线时钟 HCLK1 3.时钟树其他部分讲解... 查看原文 ...
RCC->CFGR &= (uint32_t)0xF8FF0000;//MCO微控制器没有时钟输出(对外部引脚),ADC预分频PCLK2 2分频后作为ADC时钟,APB预分频HCLK不分频,AHB预分频SYSCLK不分频,HSI作为系统时钟 //HSI作为系统时钟输出(已输出),SYSCLK=PCLK=PCLK1=PCLK2=8M,ADCCLK=1/2(PCLK2)=4M ...
① RCC->CFGR,其中RCC是一个结构体指针,RCC->CFGR表示RCC所指向的结构体中的CFGR这个成员,也就是RCC模块的配置寄存器。② C语言中 aa|=1; 等价于 aa = aa | 1; 也就是将变量aa与1进行按位或运算以后,再赋给aa,从而将aa中指定的某个位或者某几个位改写为1、并且不影响其他位。③ C...
_MCOConfig(RCC_MCO_PLLCLK_Div2 ); 选择输出时钟源。时钟的选择由时钟配置寄存器(RCC_CFGR)中的MCO[2:0]位控制。RCC_MCOConfig(RCC_MCO); 参数...RC振荡器的时钟(HSI)RCC_MCO_HSE --- 输出高速外部时钟信号(HSE)RCC_MCO_PLLCLK_Div2 --- 输出PLL倍频后的二分频时钟(PLLCLK/2) 注:由于 ...
图3时钟配置寄存器(RCC_CFGR) 时钟中断寄存器 (RCC_CIR) 图4时钟中断寄存器 (RCC_CIR) APB2 外设复位寄存器 (RCC_APB2RSTR) 图5 APB2 外设复位寄存器 (RCC_APB2RSTR) APB1 外设复位寄存器 (RCC_APB1RSTR) 图6 APB1 外设复位寄存器 (RCC_APB1RSTR) ...
RCC->CFGR &= (uint32_t)0xFF80FFFF; //复位PLLSRC、PLLXTPRE、PLLMUL、 USBPRE/OTGFSPRE,即PLL输入时钟为HSI时钟2分频后的时钟;PLLXTPRE没看懂,留坑;PLLMUL是PLL锁相环倍频系数,这里复位值0000,倍频系数保留;USBPRE/OTGFSPRE没看懂也用不到,留坑。