S32K14x MCAL配置之MCU

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

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

  • 三、外部晶振与PLL
    在本文的硬件环境中,EXTAL的频率为12MHz。因此需要将SOSC的频率配置为12MHZ。
    外部晶振配置
    这里将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
    SCG运行模式
    HSRUN Mode 下System Clock Source 有两种时钟源。
    1、Fast IRC(FIRC_CLK)
    2、System Pll(SPLL_CLK)
    HSRUN配置
    RUN配置
    VLPR配置

  • 四、外设时钟

MCAL其他模块引用MCU的外设时钟时,主要通过引用ClockRefrencePoint来实现。每个外设模块都需要配置不同的参考时钟。
外设模块参考时钟
可以通过添加McuClockReferencePoint来新增外设模块的参考时钟,每个外设的配置不尽相同,请参考S32K14x参考手册545也Table 27-8 和Table27-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为时钟源。
SPI时钟配置

发布了13 篇原创文章 · 获赞 13 · 访问量 9936

猜你喜欢

转载自blog.csdn.net/qq_25920091/article/details/104891302
今日推荐