在配置MCU模块之前,我们应该先了解所使用期间的时钟配置树。本博主使用的是S32K310的芯片,因此进行进一步分解配置。
一、器件时钟
打开S32K310的用户手册,找到“时钟”章节,我们可以看到时钟树概要图
另外找到时钟源的表,可以看到FIRC_CLK是48MHz,FXOSC_CLK是8~40MHz,PLL输出的频率25~480MHz。博主有板载的16MHz晶振,因此可以设置出锁相环相关的频率输出。相应的时钟数据可以在用户手册中查找到。
二、EB配置时钟
1、MCU模块概要配置
按照途中1->2->3的配置顺序进行。
配置步骤1的作用是预定义变体编译,就是需要提前编译好的。在下方的McuControlledClocksConfiguration中需要勾选时钟控制。
2、MCU时钟设置配置
红框中为配置项需要进一步展开配置解释。
2.1、FIRC配置
根据时钟表可以知道FIRC为48MHz时钟,打开配置以后我我们时钟表相同,因此采用默认值。
2.2、SIRC配置
SIRC时钟为32KHz,打开配置相同,因此也采用默认值。
2.3、FXOSC配置
FXOSC的时钟是晶振时钟,博主板载是16MHz的晶振,因此设置16MHz。可以根据自己板载晶振进行设置。
2.4、配置PLL
打开PLL配置选项卡,配置PLL输出频率。及PHI0和PHI1的频率。
2.5、MC_CGM0配置
这里可以配置内核时钟、外设快慢时钟、DCM时钟、LBIST时钟、SPI存储器时钟、M7内核时钟。这里对于S32K310芯片而言LBIST、SPI、M7内核时钟不需要配置。
2.6、MC_CGM1配置
下图是CGM1到CGM19的时钟截图,后面配置不再进行截图介绍
CGM0模块配置STM0时钟,这里选择时钟源为FIRC48MHz。博主采用的默认值。
2.7、MC_CGM3配置
CGM3模块配置CAN时钟,这里选择时钟源为FIRC48MHz。博主选择默认值。
2.8、MC_CGM5配置
CGM5配置时钟输出,这里选择FIRC时钟源,输出2分频24MHz,博主采用默认值。
2.9、MC_CGM6配置
CGM6配置时钟输出,这里选择FIRC时钟源,输出2分频24MHz,博主采用默认值。
2.10、MC_CGM11配置
这里配置TRAC模块时钟,博主选择默认值。
2.11、clokReference配置
这里可以自定义,主要用到内核CORE_CLK和外设慢时钟AIPS_SLOW_CLK配置。
2.12、其他配置项采用默认值
三、EB配置时钟模式
概要模式配置模式ID和运行在RUN模式下
下图中标签配置都选择默认值,需要配置可以打开看详细介绍。
这里使能外设时钟,需要注意的是需要在默认值的基础上增加使能。
至此MCU配置已经完成,感兴趣的可以学习一下。不对的地方敬请指正。
欢迎和博主私信共同探讨。