实际上不是任何时候SystemCoreClock都代表着当前系统时钟,只有调用SystemInit();时钟配置函数的时候,SystemCoreClock才表示当前系统时钟,如果自己手动配置了系统时钟,则次变量不代表当前系统时钟。
系统上的之后会首先进入SystemInit();函数配置时钟,然后再进入main()函数,如果在main函数里自己重新配置了时钟,那么此时时钟值即为自己配置的,而不是SystemCoreClock,这个变量只是代码用了SystemInit()这个函数配置出来的时钟值。
SystemInit()首先会调用内部时钟HSI之后才会调用外部时钟HSE。