一,时钟树。
1,时钟源。
参考: S32K144之时钟配置及时钟查看 - 爱码网 (likecs.com)
时钟源有4种,如上图圈出来的。
2,时钟介绍
1、内核时钟(CORE_CLK)
2、总线时钟(BUS_CLK)
3、FLASH 时钟
4、外设时钟,外设时钟就有比价丰富的时钟选择,包括了:SPLLDIV1_CLK、SPLLDIV2_CLK、FIRCDIV1_CLK、FIRCDIV2_CLK、SIRCDIV1_CLK、SIRCDIV2_CLK、SOSCDIV1_CLK、SOSCDIV2_CLK
5、内部低功耗时钟以及RTC时钟,LPO_CLK、RTC_CLKOUT
在时钟配置过程中,针对HSRUN、NORMAL RUN、S LOW RUN模式,有些内部时钟配置需要注意以及一些限制,不能超过一定的限制最大频率,。
S32K144有几种时钟模式,HSRUN、NORMAL RUN、SLOW RUN模式,不同时钟模式下,不能超过一定的限制最大频率。
以下是一些设置举例
二,时钟配置程序。
举例:外部时钟16MHz,Normal RUN 模式,
系统时钟发生器(SCG)模块提供单片机的系统时钟。SCG包含一个系统锁相环(SPLL)、一个慢速内参考时钟(SIRC)、一个快速内参考时钟(FIRC)和系统振荡器时钟(SOSC)。SPLL由SOSC参考时钟提供来源。SCG可以选择SPLL的输出时钟或SCG参考时钟(SIRC、FIRC和SOSC)作为MCU系统时钟的源。SCG还支持晶体振荡器的操作,它允许外部晶体、陶瓷谐振器或其他外部时钟源产生外部参考时钟(它也可作为MCU系统时钟的时钟源)。
外部时钟输入通过倍频PLL,得到VCO_CLK,二分频得到SPLL_CLK,之后再分频得到各时钟。
1,设置时钟源。
2,查看设置。
3,初始化时钟代码
CLOCK_SYS_Init(g_clockManConfigsArr, CLOCK_MANAGER_CONFIG_CNT,
g_clockManCallbacksArr, CLOCK_MANAGER_CALLBACK_CNT);
CLOCK_SYS_UpdateConfiguration(0U, CLOCK_MANAGER_POLICY_AGREEMENT);