(STM32笔记)九、RCC时钟树与时钟 第一部分

ops/2024/10/18 16:45:41/

我用的是正点的STM32F103来进行学习,板子和教程是野火的指南者
之后的这个系列笔记开头未标明的话,用的也是这个板子和教程。

九、RCC时钟树与时钟

  • 九、RCC时钟树与时钟
    • 1、时钟树
      • HSE时钟
      • HSI时钟
      • 锁相环时钟
      • 系统时钟
      • HCLK时钟
      • PCLK1时钟
      • PCLK2时钟
      • RTC时钟
      • 独立看门狗时钟
      • MCO时钟输出
      • 时钟安全系统(CSS)

九、RCC时钟树与时钟

1、时钟树

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

HSE时钟

  • HSE:High Speed External Clock signal,即高速的外部时钟。
    在这里插入图片描述

  • 来源:无源晶振(4-16M),通常使用8M,通过倍频得到72M。
    在这里插入图片描述

无缘晶振需要配两个电容

补充:
有源晶振一般4个脚,一个电源,一个接地,一个信号输出端,一个NC(空脚)。有源晶振自身就能震动。
在这里插入图片描述

  • 控制:

在这里插入图片描述

时钟控制寄存器(RCC_CR)的位16:HSEON控制开关
在这里插入图片描述

时钟控制寄存器(RCC_CR)的位17:HSERDY显示时钟是否就绪(仅可读)
在这里插入图片描述

HSI时钟

  • HSI:Low Speed Internal Clock signal,高速的内部时钟。
    在这里插入图片描述

  • 来源:芯片内部,大小为8M,当HSE故障时,系统时钟会自动切换到HSI,直到HSE启动成功。

  • 控制:
    在这里插入图片描述

时钟控制寄存器(RCC_CR)的位0:HSION控制开关
在这里插入图片描述

时钟控制寄存器(RCC_CR)的位1:HSIRDY显示时钟是否就绪(仅可读)
在这里插入图片描述

锁相环时钟

  • 锁相环时钟:PLLCLK
    在这里插入图片描述

  • 来源:(HSI/2、HSE)经过倍频所得。
    其中HSI一定会/2分频,HSE可以选择是否/2分频。
    选择其中一个时钟进行倍频,即可得到锁相环时钟。

  • 控制:
    在这里插入图片描述

时钟配置寄存器(RCC_CFGR)位16:PLLSRC
在这里插入图片描述

时钟配置寄存器(RCC_CFGR)位17:PLLXTPRE
在这里插入图片描述

时钟配置寄存器(RCC_CFGR)位21:18:PLLMUL
在这里插入图片描述

注意:PLL时钟源头使用HSI/2的时候,PLLMUL最大只能是16,这个时候PLLCLK最大只能是64M,小于ST官方推荐的最大时钟72M。

系统时钟

  • 锁相环时钟:SYSCLK,最高为72M(ST官方推荐的)
    在这里插入图片描述

  • 来源:HSI、HSE、PLLCLK。

  • 控制:
    在这里插入图片描述

时钟配置寄存器(RCC_CFGR)位1:0:SW
在这里插入图片描述

时钟配置寄存器(RCC_CFGR)位3:2:SWS(仅可读)
在这里插入图片描述

注意:通常的配置是SYSCLK=PLLCLK=72M。

HCLK时钟

在这里插入图片描述

在这里插入图片描述

  • HCLK:AHB高速总线时钟,速度最高为72M。为AHB总线的外设提供时钟、为Cortex系统定时器提供时钟(SysTick)、为内核提供时钟(FCLK)。

AHB:advanced high-performance bus。

  • 来源:系统时钟分频得到,一般设置HCLK=SYSCLK=72M
  • 控制:
    在这里插入图片描述

时钟配置寄存器(RCC_CFGR)位7:4:HPRE
在这里插入图片描述

PCLK1时钟

在这里插入图片描述

在这里插入图片描述

  • PCLK1:APB1低速总线时钟,最高为36M,为APB1总线的外设提供时钟。
    2倍频之后则为APB1总线的定时器2-7提供时钟,最大为72M。

如HCLK时钟为72M时,如果不用APB1外设,则分频系数为1(72M);如果使用APB1外设,则分频系数为2(此时36M),同时再倍频2给定时器2-7提供时钟(还是72M)。

  • 来源:APB1分频得到,一般配置PCLK1=HCLK/2=36M
  • 控制:
    在这里插入图片描述

时钟配置寄存器(RCC_CFGR)位10:8:PPRE1
在这里插入图片描述

PCLK2时钟

在这里插入图片描述

在这里插入图片描述

  • PCLK2:APB2高速总线时钟,最高为72M。为APB1总线的外设提供时钟。为APB1总线的定时器1和8提供时钟,最大为72M。
  • 来源:APB2分频得到,一般配置PCLK1=HCLK=72M
  • 控制:
    在这里插入图片描述

时钟配置寄存器(RCC_CFGR)位13:11:PPRE2
在这里插入图片描述

其中ADC时钟最大14MHz,还需要对PCLK2时钟继续分频
时钟配置寄存器(RCC_CFGR)位15:14:ADCPRE
在这里插入图片描述

RTC时钟

  • RTC时钟:为芯片内部的RTC外设提供时钟。
    在这里插入图片描述

  • 来源:HSE_RTC(HSE分频得到)、LSE(外部32.768KHZ的晶体提供)、LSI(40KHZ)。

  • 控制:
    在这里插入图片描述

备份域控制寄存器(RCC_BDCR)位9:8:RTCSEL
在这里插入图片描述

独立看门狗时钟

  • IWDGCLK,由LSI提供
    在这里插入图片描述

MCO时钟输出

  • MCO:microcontroller clock output,微控制器时钟输出引脚,由PA8复用所得。
    在这里插入图片描述

  • 来源:PLLCLK/2,HSE、HSI、SYSCLK

  • 控制:CRGR:MCO
    在这里插入图片描述

时钟配置寄存器(RCC_CFGR)位26:24:MCO
在这里插入图片描述

时钟安全系统(CSS)

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

时钟控制寄存器(RCC_CR)的位19:CSSON控制开关
在这里插入图片描述


http://www.ppmy.cn/ops/89475.html

相关文章

主要的软件设计模式及其在Kotlin中的实现示例

软件设计模式(Software Design Patterns)是面向对象设计中常用的解决方案,它们为常见的软件设计问题提供了一些被证明有效的解决方案。以下是一些主要的软件设计模式及其在Kotlin中的实现示例。 创建型模式(Creational Patterns&…

悬而未决:奇怪的不允许跨域CORS policy的问题

我在本地HBuilderX中进行预览写好的前端网页,它里面用了ajax访问了远程服务器的后端API网址,不出意外地报不允许跨域访问的错了:Access to XMLHttpRequest at ‘http://xxx.com/MemberUser/login’ from origin ‘http://mh.com’ has been b…

江科大/江协科技 STM32学习笔记P17

文章目录 一、TIM输入捕获输入捕获与输出比较的关系频率测量测频法测周法 输入捕获的电路异或门的执行逻辑 输入捕获通道主从触发模式输入捕获基本结构PWMI基本结构输入捕获模式测频率main.c 输入捕获模式测占空比main.c 一、TIM输入捕获 输入捕获与输出比较的关系 在输出比较中…

RabbitMQ高级特性 - 非持久化 / 持久化(交换机、队列、消息)

文章目录 RabbitMQ 持久化机制概述实现非持久化(交换机、队列、消息)实现持久化(交换机、队列、消息) RabbitMQ 持久化机制 概述 前面讲到了 生产者消息确认机制 和 消费者消息确认机制,保证了消息传输的可靠性&#…

安装Docker以及安装过程中的错误解决

一、纯享版教程+操作截图 环境:centOs 7 FinalShell !!!此教程针对第一次安装docker的友友,如果已经安装过且报错的朋友,请移步报错合集。 1.卸载旧版本(无论是否安装过都建议执…

Tooltip 文字提示

在偶然维护前端开发时,遇到页面列表中某个字段内容太长,且该字段使用了组件显示,导致不能使用纯文本得那个省略号代替显示得css样式效果,如下 所以只能另辟溪路了, 1、最开始想到是使用横向滚动得效果来实现&#xff…

第一阶段面试问题(前半部分)

1. 进程和线程的概念、区别以及什么时候用线程、什么时候用进程? (1)线程 线程是CPU任务调度的最小单元、是一个轻量级的进程 (2)进程 进程是操作系统资源分配的最小单元 进程是一个程序动态执行的过程,包…

成为大佬之路--linux软件安装使用第000000040篇-linux操作文件和文件夹常用命令

1.创建文件 touch 文件名 下面命令创建了AscendKing.txt文件 然后过滤只要包含AscendKing的文件和文件夹 [rootVM-24-14-centos opt]# touch AscendKing.txt [rootVM-24-14-centos opt]# ls -l AscendKing* -rw-r--r-- 1 root root 0 7月 31 23:13 AscendKing.txt [rootVM-…