为什么RCC_FLAG_LSERDY为1了,还说初始化时钟失败,晶振有问题?

2019-08-23 14:52发布


为什么有问题?
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
4条回答
Scy
2019-08-23 19:59
因为程序执行到while (RCC_GetFlagStatus(RCC_FLAG_LSERDY) == RESET&&temp<250) 这句的时候,一直在等待RCC_FLAG_LSERDY置1,这是LSE时钟就绪标志,在while循环内进行temp++,当temp>=250时,跳出while循环,执行下面的if语句。if语句的意思是如果跳出while循环的原因是temp>=250倒置的,则认为是晶振问题。如果跳出循环的原因是RCC_FLAG_LSERDY==1导致的,则证明LSE时钟正常工作

一周热门 更多>