求问STM32F411运行的最低系统时钟

2019-07-20 17:24发布

我采用的24M外接晶振,在降低系统主频的时候,当SCLK低于30M时,systick不能正常工作。
例如时钟配置如下:
PLL_M = 24; PLL_N = 250; PLL_P = 10;  PLL_Q = 8;
RCC_HCLKConfig(RCC_HCLK_Div1);
RCC_PCLK1Config(RCC_HCLK_Div4);
RCC_PCLK2Config(RCC_HCLK_Div2);
得到25M主频的时候,但是delay 1s实际只delay了250ms;LED灯可以正常点亮。
delay函数如下:
void delay_ms(u32 mTime)
{
  u32 temp;
  SysTick->LOAD = 3.125*1000*mTime;
  SysTick->VAL = 0x00;
        SysTick->CTRL = 0x01;//ê1Äü
        do
        {
         temp = SysTick->CTRL;
        }while((temp&0x01)&&(!(temp&(1<<16))));
         
        SysTick->CTRL = 0x00;
        SysTick->VAL = 0x00;
}



请问这是什么情况呢?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。