S32K14x MCAL配置之MCU

  • 一.文章简介
    本文主要介绍如何使用EB配置MCU模块。MCU模块负责配置S32K14x的系统时钟和各个外设时钟,并未其他模块提供参考时钟。

  • 二.时钟架构
    S32K14x时钟架构如下(S32K-RM 538页)
    S32K14x MCAL配置之MCU_第1张图片
    S32K的大部分时钟都是通过SCG(System Clock Generator)模块控制。SCG模块一共有三个时钟源:
    1、Internal refrences(内部晶振)
    2、External Crystals (外部晶振)
    3、exteranl clocks (外部时钟输入)
    这里我选择外部晶振为SCG时钟源,PLL作为系统时钟。

  • 三、外部晶振与PLL
    在本文的硬件环境中,EXTAL的频率为12MHz。因此需要将SOSC的频率配置为12MHZ。
    S32K14x MCAL配置之MCU_第2张图片
    这里将SOSC的频率配置为12000000Hz。Divider 1与Divider 2通过分频为时钟SOSCDIV1_CLK 和SOSCDIV2_CLK。
    PLL只有一个时钟来源SOSC,因此PLL的输入时钟必须与SOSC一致。
    PLL经过参考时钟分频(PREDIV)和倍乘系数(MULT)得到VCO_CLK,VCO_CLK除以2得到SPLL_CLK。
    PLL时钟关系
    SCG支持三种运行模式:
    1、RUN
    2、HSRUN
    3、VLPRUN
    S32K14x MCAL配置之MCU_第3张图片
    HSRUN Mode 下System Clock Source 有两种时钟源。
    1、Fast IRC(FIRC_CLK)
    2、System Pll(SPLL_CLK)
    S32K14x MCAL配置之MCU_第4张图片
    S32K14x MCAL配置之MCU_第5张图片
    S32K14x MCAL配置之MCU_第6张图片

  • 四、外设时钟

MCAL其他模块引用MCU的外设时钟时,主要通过引用ClockRefrencePoint来实现。每个外设模块都需要配置不同的参考时钟。
S32K14x MCAL配置之MCU_第7张图片
可以通过添加McuClockReferencePoint来新增外设模块的参考时钟,每个外设的配置不尽相同,请参考S32K14x参考手册545也Table 27-8 和Table27-9。截取部分表格如下:
S32K14x MCAL配置之MCU_第8张图片
S32K14x MCAL配置之MCU_第9张图片

以SPI为例,可以看到SPI一共有四种时钟选择。
1、SOSCDIV2_CLK (PCS = 001b)
2、SIRCDIV2_CLK (PCS = 010b)
3、FIRCDIV2_CLK (PCS = 011b)
4、SPLLDIV2_CLK (PCS = 110b)

增加SPI ClockReference Point,选择SOSCDIV2_CLK为时钟源。
S32K14x MCAL配置之MCU_第10张图片

你可能感兴趣的:(AUTOSAR,S32K,MCAL)