1. 關于HSE的時鐘配置為主時鐘
static void CLK_Config(void)
{
CLK_DeInit(); // 初始化
CLK_HSECmd(ENABLE); //使能HSE
CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO, CLK_SOURCE_HSE, DISABLE,
CLK_CURRENTCLOCKSTATE_DISABLE); //切換HSE 并關閉其他時鐘 為自動模式
CLK_ITConfig(CLK_IT_CSSD, ENABLE);
CLK_ClockSecuritySystemEnable();
CLK_CCOConfig(CLK_OUTPUT_HSE); //通過PC4可以檢視輸出
CLK_CCOCmd(ENABLE);
enableInterrupts();
}
2. 關于HSI的時鐘配置為主時鐘
static void CLK_Config(void)
{
CLK_HSIPrescalerConfig(CLK_PRESCALER_HSIDIV2); //直接配置即可
}
3. 關于LSI的時鐘配置為主時鐘
void CLK_Config(void)
{
CLK_DeInit(); //初始化
CLK_LSICmd(ENABLE); //使能LSI
CLK_ClockSwitchConfig(CLK_SWITCHMODE_AUTO,CLK_SOURCE_LSI,DISABLE,
CLK_CURRENTCLOCKSTATE_DISABLE); //切換
CLK_CCOConfig(CLK_OUTPUT_LSI); //PC4輸出
CLK_CCOCmd(ENABLE);
}
這裡還需要在STVP中設定OPTION BYTE
LSI_EN LSI Clock available as CPU clock source
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIwczLcVmds92czlGZvwVP9EUTDZ0aRJkSwk0LcxGbpZ2LcBDM08CXlpXazRnbvZ2LcRlMMVDT2EWNvwFdu9mZvwVPj1mYoRXbihGbtFmb1cVWwBnMMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2LcRHelR3LcJzLctmch1mclRXY39DO0gDN1cjM2EzMxkDM4EDMy8CX0Vmbu4GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.jpg)
這樣就可以了