配置相应时钟后,可以打印输出:
// 配置PLL
sta = CLK_EnablePLL(CLK_PLLCTL_PLLSRC_HXT, 144000000);
/***********************************************************************/
printf("HXT:%d.\n",CLK_GetHXTFreq());
printf("LXT:%d.\n",CLK_GetLXTFreq());
printf("PCLK0:%d.\n",CLK_GetPCLK0Freq());
printf("PCLK1:%d.\n",CLK_GetPCLK1Freq());
printf("HCLK:%d.\n",CLK_GetHCLKFreq());
printf("CPUCLK:%d.\n",CLK_GetCPUFreq());
printf("PLL:%d.\n",sta);
HXT和LXT需使能才有值。
结论:
HXT可以在config区进行使能。所以说进入程序时已经启动。
但PLL只能由用户开启,如果用户不开启,CPUCLK、HCLK、PCLK0、PCLK1的频率只能达到HXT的12M或者是HIRC的22.1184M , PLL = 0;
扫描二维码关注公众号,回复:
952286 查看本文章
开启PLL的频率可以达到250M。(实测开到270M还行,但是272M有时可以启动有时卡死!)
还有一种情况,config没有配置HXT时,进入程序虽然可以起振,但是CPUCLK、HCLK、PCLK0、PCLK1却只能使用HIRC的一半 11.0592M ,PLL正常,但不能用。(但是配置HXT引脚时,一切正常!)