# 时钟树

## 在哪里可以找到相关资料

* 时钟树图----参考手册的**6.2时钟**章节

![](https://s2.loli.net/2023/03/11/3OXQpxwHRPc7WJC.png)

* 哪些外设用了哪个时钟--参考手册**2.1系统构架**小节

![](https://s2.loli.net/2023/03/11/7UnASLRXDgoad65.png)

## 时钟来源

共有4个时钟来源，序号1--HSI内部高速时钟，序号2--HSE外部高速，序号3-LSE低速外部，序号4--LSI低速内部，如何区分：

H代表High高速，E代表Extern外部，I代表Interal内部

区别总结如下：

注意：

* 系统时钟源只能使用高速源，低速源只能用作RTC

总结如下表

![](https://s2.loli.net/2023/03/11/IrnYvX9QHckAhU1.png)

![](https://s2.loli.net/2023/03/11/AGer4S7UdKxIcDR.png)

## RTC RCC 滴答定时器 系统时钟

* RTC是实时时钟，简单来说我们涉及到时钟，日历，闹钟的设计，一般要求精度高，有外部低速时首选外部低速需要用到这个外设寄存器，若无外部低速，可以选择外部高速
* RCC是复位和时钟控制寄存器，管理着大部分外设的时钟，比如APB1,APB2总线上的外设
* 滴答定时器（Systick），产生精准的定时，常用于FreeRTOS，以及延迟函数，在时钟树末端有一个至Coretx系统时钟其实表示的就是Systick而不是系统时钟
*

```
![](https://s2.loli.net/2023/03/11/edto398CXlc5U4Y.png)
```

* 系统时钟，实际上在时钟树上表示SYSCLK

## 时钟树分析

![](https://s2.loli.net/2023/03/11/Qq6eGhO371H8dyS.png)

### 怎么看时钟树

> 序号1处的梯形图标实际上表示了一个选择器，选择输入源，在实际操作中对应了寄存器，以1为例，我们可以选择以外部高速时钟源以1倍频（原来的频率）还是/2的频率输入后续的时钟链路

### 分析系统时钟SYSCLK的时钟链路

以正点原子的为例，使用8M的外部晶振作为高速时钟源，进来后在PLLXTPRE的分叉口选择不直接输入SW选择器，也不以/2的频率进入PLLXTPRE，而是以8M完整的频率进入PLLXTPRE，然后来到PLLSRC进入PLLMUL，以9倍频，即72M输出来到SW选择器，SW选择器以PLLCLK为输入源，即我们倍频得到的72M作为系统时钟的来源，供给后续链路

### 时钟树简图

原版时钟树较复杂，可简化如下，如：SYSCLK可以选择来自HSI的原生输入，也可以来自HSE的原生输入，也可以选择来自PLL的2-16倍频。

![](https://s2.loli.net/2023/03/11/nAXqHzNQmpkdErc.png)

## MCO CSS FCLK

> MCO可以用以向外部输出时钟，引脚复用在PA8上
>
> CSS时钟安全系统,如果HSE启动失败，切换到HSI，可进NMI中断
>
> FCLK自由运行时钟,用于采样中断和调试模块计时，休眠仍有效


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://oceanaparts.gitbook.io/halnote/shi-zhong-shu.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
