PLL configuration

2019-07-21 05:28发布

/*  PLL configuration: PLLCLK = HSE * 9 = 72 MHz */
        RCC->CFGR &= (uint32_t)((uint32_t)~(RCC_CFGR_PLLSRC | RCC_CFGR_PLLXTPRE |
                                            RCC_CFGR_PLLMULL));
        RCC->CFGR |= (uint32_t)(RCC_CFGR_PLLSRC_HSE | RCC_CFGR_PLLMULL9);
大致意思我知道,选择HSE时钟源,再选择9倍频,变成72MHZ,下面对CFGR寄存器进行配置:
具体如下:
#define  RCC_CFGR_PLLSRC                     ((uint32_t)0x00010000)        /*!< PLL entry clock source */
#define  RCC_CFGR_PLLXTPRE                  ((uint32_t)0x00020000)        /*!< HSE divider for PLL entry */
#define  RCC_CFGR_PLLMULL                   ((uint32_t)0x003C0000)        /*!< PLLMUL[3:0] bits (PLL multiplication factor) */
#define  RCC_CFGR_PLLSRC_HSE              ((uint32_t)0x00010000)        /*!< HSE clock selected as PLL entry clock source */
#define  RCC_CFGR_PLLMULL9                  ((uint32_t)0x001C0000)        /*!< PLL input clock*9 */
第一步我的计算结果是: 0xFFC0FFFF
第二步计算结果是:     0X00D00000     位20-位23都是1101
从下面怎么看是选择HSE时钟源,再选择9倍频,变成72MHZ?
QQ图片20190123201847.png QQ图片20190123204942.png

友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。