ZHCUAN6E October 2022 – May 2025 MSPM0L1105 , MSPM0L1106 , MSPM0L1116 , MSPM0L1117 , MSPM0L1227 , MSPM0L1227-Q1 , MSPM0L1228 , MSPM0L1228-Q1 , MSPM0L1303 , MSPM0L1304 , MSPM0L1304-Q1 , MSPM0L1305 , MSPM0L1305-Q1 , MSPM0L1306 , MSPM0L1306-Q1 , MSPM0L1343 , MSPM0L1344 , MSPM0L1345 , MSPM0L1346 , MSPM0L2227 , MSPM0L2227-Q1 , MSPM0L2228 , MSPM0L2228-Q1
MCLK 是主系统时钟以及所有同步时钟(MCLK、CPUCLK、ULPCLK、MFCLK 和 LFCLK)的同步根点。它通常是系统中速度最高的时钟,在器件的完整温度范围内支持以高达 32MHz 的速度运行。MCLK 树是 CPUCLK(在运行模式下)、PD1 高速外设总线时钟(在运行和睡眠模式下)和 ULPCLK 低功耗总线时钟(在运行、睡眠、停止和待机模式下)的根时钟源。此外,4MHz MFCLK 和 32kHz LFCLK 输出与 MCLK 同步。
MCLK 到 PD1 外设的输出在运行和睡眠模式中启用,而在所有其他功耗模式下禁用。当在停止和待机模式下禁用 MCLK 到 PD1 的输出时,MCLK 树仍在运行,以便为 ULPCLK 提供时钟源并为 MFCLK 和 LFCLK 提供同步。
MCLK 源可通过无干扰时钟多路复用器进行选择,并且可以在运行时由用户软件动态更改。在进入停止和待机模式时或在异步快速时钟请求期间,也可以由硬件自动更改此源。MCLK 的可用源包括:
启动后,默认情况下 MCLK 以 SYSOSC 为时钟源。决定要使用哪个振荡器作为 MCLK 的时钟源很重要,因为 MCLK 同时设置 CPUCLK 频率和 PD1 外设的总线时钟频率。因此,为 MCLK 选择的振荡器的精度和时钟速度不仅必须适合 CPU 运行,还必须适合于使用总线时钟作为其功能时钟的 PD1 外设运行。
为 MCLK 做出的时钟源和频率选择决策也会影响运行和睡眠模式下的 ULPCLK。有关 MCLK 和 ULPCLK 在运行和睡眠模式下如何相关的更多信息,请参阅 ULPCLK 部分。
应用软件可以通过设置 MCLKCFG.USELFCLK,将所有模式下的 MCLK 源从 SYSOSC 更改为 LFCLK,从而在 CPU 和 PD1 外设运行时提供低峰值电流消耗。下表给出了在 RUN 和 SLEEP 模式下为 MCLK 选择不同时钟所需的适当寄存器位配置。
| 所需的源 | MCLKCFG.USELFCLK |
|---|---|
| SYSOSC | 0 |
| LFCLK | 1 |
要在运行模式下将 MCLK 从 SYSOSC 切换到 LFCLK,请执行以下操作:
要在运行模式下将 MCLK 从 LFCLK 切换到 SYSOSC,请执行以下操作:
要将 MCLK 从 SYSOSC 切换到 HSCLK,请执行以下操作:
要将 MCLK 从 HSCLK 切换到 SYSOSC,请执行以下操作:
提供了一个 MCLK 源分频器 (MDIV),以使 MCLK 在最低 SYSOSC 频率 (4MHz) 与 LFCLK 频率 (32kHz) 之间运行。MDIV 适用于峰值电流受限但仍要求时钟速度高于 32kHz 的应用。MDIV 支持对 4MHz SYSOSC 频率进行高达 16 分频,从而启用表 2-5 中给出的附加 MCLK 频率选项。例如,通过将 SYSOSC 设置为 4MHz 并将 MDIV 设置为 7(8 分频),可以获得 500kHz 的 MCLK 频率。
表 2-5 展示了使用 /2、/4、/8 和 /16 MDIV 配置实现的 MCLK 频率,但 MDIV 可以设置为 /2 和 /16 之间的任意整数分频器(MDIV 寄存器值分别为 0x1 到 0xF,0x0 将禁用 MDIV)。
| MCLK 源 | MDIV | MCLK 频率 |
|---|---|---|
| SYSOSC (4MHz) | 0(已禁用) | 4MHz |
| 1 (/2) | 2MHz | |
| 3 (/4) | 1MHz | |
| 7 (/8) | 500kHz | |
| 15 (/16) | 250kHz |
要使用 MDIV 以低于 4MHz 的中频运行 MCLK,请执行以下步骤:
使用 MDIV 降低 MCLK 频率时,有几条规则适用:
要禁用 MDIV,请执行以下操作: