ch32v303 rcc设置

    /*  PLL configuration: PLLCLK = HSI * 6 = 48 MHz */

    RCC->CFGR0 &= (uint32_t)((uint32_t)~(RCC_PLLSRC | RCC_PLLXTPRE | RCC_PLLMULL));


#ifdef CH32V30x_D8

    RCC->CFGR0 |= (uint32_t)(RCC_PLLSRC_HSI_Div2 | RCC_PLLMULL6);

#else

    RCC->CFGR0 |= (uint32_t)(RCC_PLLSRC_HSI_Div2 | RCC_PLLMULL6_EXTEN);

#endif

wch 提供的例子:  RCC_PLLSRC_HSI_Div2  RCC_PLLMULL6 为什么不是  HSI/2*6

而是 HSI*6

你好,您这里配置的并不是HSI二分频,配置HSI二分频/不分频作为PLL输入时钟的寄存器在扩展寄存器中,例程默认HSI不分频作为PLL输入时钟。而上面的DIV2指的是选择HSI不分频或2分频送入PLL,具体可看下RM手册RCC-CFGR0寄存器。



image.png

image.png


只有登录才能回复,可以选择微信账号登录