STM32时钟配置图详解
一图概述:

左侧输入时钟源
Input Frequency (LSE/LSI/HSI/HSE)
- LSE (Low-Speed External):外部32.768 kHz晶体振荡器,通常用于RTC(实时时钟)。
- LSI (Low-Speed Internal):内部低速时钟,频率为40 kHz,通常用于看门狗计时器等低功耗模块。
- HSI (High-Speed Internal):内部高速时钟,频率为8 MHz,系统默认使用。
- HSE (High-Speed External):外部高速晶体振荡器,频率范围为4-16 MHz,外部来源的主时钟。
RTC(Real-Time Clock)时钟
- RTC Clock Mux:选择用于RTC模块的时钟源,包括LSE、LSI和HSE的1/128分频输出。
- LSE, LSI, HSE_RTC:分别为32.768 kHz的LSE时钟,40 kHz的LSI时钟,以及HSE时钟的分频输出。
系统时钟路径
- PLL Source Mux:选择PLL的输入源,HSE或者HSI都可以作为输入源。图中选择了HSE作为PLL输入源。
- HSI 8 MHz 或 HSE,默认选择 HSE 时钟。
PLL(Phase Locked Loop)
- PLL源时钟分频器:HSE被1分频(即不改变频率)后输入PLL。
- PLL倍频器:设置为8倍,即HSE的8 MHz被倍频到64 MHz,作为PLLCLK输出。
系统时钟选择
System Clock Mux:选择系统主时钟(SYSCLK)的源。可以选择HSI、HSE或PLL。图中选用了PLL时钟。
时钟分频器
- AHB Prescaler:AHB总线分频器,图中设置为1倍,不对时钟进行分频,输出的HCLK与SYSCLK相同,都是8 MHz。
- HCLK:核心时钟(HCLK),用于CPU和内存总线。最大值为72 MHz,当前设置为8 MHz。
- APB1 Prescaler:APB1外设总线分频器,设置为2倍。因为APB1最大允许时钟为36 MHz,分频后得到APB1总线时钟为4 MHz。
- APB2 Prescaler:APB2外设总线分频器,设置为1倍,输出与HCLK一致,8 MHz。
外设时钟
- PCLK1:APB1外设时钟,分频后为4 MHz。
- PCLK2:APB2外设时钟,与HCLK相同,为8 MHz。
USB Prescaler:USB时钟分频器,配置为1倍,输出64 MHz(PLL输出)用于USB时钟。
关键模块的时钟频率
- I2S2, I2S3:音频接口I2S时钟,8 MHz。
- SDIO:SD卡接口时钟,8 MHz。
- FCLK:闪存接口时钟,8 MHz。
- Cortex系统定时器:用于Cortex-M核心系统的时钟,8 MHz。
- ADC Prescaler:ADC时钟分频器,当前设置为2倍,ADC时钟为4 MHz。
外设在总线上的分布
- 在STM32的总线上,外设分布在不同的总线(AHB、APB1、APB2)上,下面是主要外设的分类:
AHB(Advanced High-Performance Bus)总线上的外设:
-
AHB总线通常用于高速外设和DMA控制器,负责连接核心系统、存储器以及外设。
-
主要的外设包括
- DMA(Direct Memory Access)控制器:用于内存与外设之间的直接数据传输。
- FSMC(Flexible Static Memory Controller):用于连接外部存储器,如SRAM、NOR Flash等。
- SDIO(Secure Digital Input Output):用于连接SD卡的接口。
- 以太网MAC(Ethernet MAC):如果支持,以太网控制器通常也连接到AHB总线。
- USB OTG(On-The-Go):用于USB连接的外设。
- 闪存接口(Flash Interface):负责与内部闪存进行通信。
APB1(Advanced Peripheral Bus 1)总线上的外设:
- APB1总线连接低速外设,最大工作频率通常是36 MHz。
- 主要的外设包括:
- TIM2 - TIM7:通用定时器2到7,低速定时器,用于计时、脉冲宽度调制(PWM)等。
- USART2、USART3、UART4、UART5:串行通信外设,用于串口通信。
- I2C1、I2C2:I2C接口,用于与I2C兼容设备进行通信。
- SPI2、SPI3:SPI接口,用于高速串行数据通信。
- CAN:控制器局域网(CAN)通信接口。
- DAC(Digital-to-Analog Converter):数字-模拟转换器,用于模拟信号输出。
- PWR:电源管理外设。
- WWDG(Window Watchdog):窗口看门狗定时器,用于系统复位。
- IWDG(Independent Watchdog):独立看门狗,用于系统保护。
APB2(Advanced Peripheral Bus 2)总线上的外设:
- APB2总线连接高速外设,最大工作频率可以达到72 MHz。
主要的外设包括:
- TIM1、TIM8:高级定时器1和8,通常用于电机控制、PWM输出等。
- USART1:高速串口,用于高速通信。
- SPI1:高速SPI接口。
- ADC1、ADC2、ADC3:模数转换器(ADC),用于模拟信号采样和转换。
- EXTI(External Interrupt Controller):外部中断控制器,用于处理外部引脚中断。
- GPIOA - GPIOG:通用输入输出口,用于与外部设备进行交互。
- SYSCFG:系统配置控制器,用于配置系统参数,如复位和时钟。
其它外设:
RTC(Real-Time Clock):实时时钟,用于时间管理,通常连接在低速时钟(LSI或LSE)上。
CRC:循环冗余校验(CRC)计算单元,用于数据完整性校验。
注意事项
- Timer Clock(定时器时钟)
定时器时钟是专门为定时器(Timer)模块提供的时钟信号,特别是那些用于计时、PWM生成、捕获和比较等操作的硬件定时器。 - Peripheral Clock(外设时钟)
外设时钟是为其他外设模块(非定时器)提供的时钟信号。与定时器时钟不同,外设时钟直接来自APB1或APB2的时钟分频器,不会经过额外的倍频。 - 定时器时钟主要负责与定时器相关的任务(如PWM、捕获比较),而外设时钟负责一般外设的运行。
相关文章:
STM32时钟配置图详解
一图概述: 左侧输入时钟源 Input Frequency (LSE/LSI/HSI/HSE) LSE (Low-Speed External):外部32.768 kHz晶体振荡器,通常用于RTC(实时时钟)。LSI (Low-Speed Internal):内部低速时钟,频率为…...
Vscode——调试时,修改变量值
第一步:点击变量,鼠标右键 第二步:点击 设置值...
1. 初识LLM API:环境配置与多轮对话演示
其实AI应用并不是一个什么很高大上的东西,你可以将它当作一个文字的“调库”行为,“调库”只需要知道库名就行了,这里实际也是如此。甚至你只需要知道你想问什么,将你的消息作为输入,就能从大模型得到输出。而这个“库…...
【AI编程助手】VsCode插件--通义灵码
目录 摘要 一、插件安装 二、“通义灵码” 使用 三、官网教程 四、总结 五、参考信息 摘要 通义灵码是一款强大的 AI 编程助手。它能够理解编程相关的复杂逻辑,为开发者提供高效、准确的代码生成与优化建议。在编程过程中,它可以辅助处理各种任务&…...
9月10号的学习
//界面1 头文件 signals://界面1的自定义信号void my_signal(); private slots:void on_pushButton_2_clicked();void on_pushButton_clicked(); //界面1 .cpp文件 void Widget::on_pushButton_2_clicked() {QMessageBox msg(QMessageBox::Warning,"警告","是否…...
QtC++截图支持窗口获取
介绍 在截图工具中你会发现,接触到窗口后会自动圈出目标窗口,个别强大一点的还能进行元素识别可以自动圈出元素,那么今天简单分析一下QTc如何获取窗口并圈出当前鼠标下的窗口。 介绍1.如何获取所有窗口2.比较函数3.实现窗口判断 结尾 1.如何获取所有窗口…...
料品档案没有配置主供应商信息
这个问题经常会出现在普通用户的面前。没有合适的工程人员去打理料品档案。信息是缺漏的。用友给出来的提示,也让人摸不着头脑。只能是记下来备用吧。...
springboot属性加载优先级和常见命令行属性
属性加载优先级: 1.SpringApplication:启动的main方法里注入的属性 2.PropertySource:通过注解 加载的数据配置文件 3.Config data file:application.yml/.properties 4.OS environment variable:环境变量 5.Command l…...
Math Reference Notes: 因式定理
文章目录 1. 因式定理的定义2. 因式定理的数学表达:3. 因式定理的推导4. 因式定理的含义5. 因式定理的应用6. 因式定理与余式定理的关系7. 因式定理的应用领域8.因式定理的局限性 因式定理是多项式代数中的一个重要工具,帮助我们通过多项式的根来因式分解…...
Kubernetes------Service
目录 一、属性说明 二、定义和基本配置 1、定义 2、创建Service 2.1、typeClusterIP 2.2、typeNodePort 2.3、固定IP访问 三、Service、EndPoint、Pod之间的关系 四、服务发现 1、基于Service中IP访问外部服务 2、基于Service中域名访问外部服务 五、Ingress的安装和使…...
C#的LINQ语句
在 C# 中,LINQ(Language Integrated Query)是一种强大的查询技术,它允许你使用熟悉的 C# 语法来查询数据集合。LINQ 可以用于查询各种数据源,包括数组、列表、数据集、SQL数据库等。 以下是一些基本的 LINQ 语句示例&…...
项目实战系列三: 家居购项目 第三部分
文章目录 🍃后台分页🍅后台分页导航 🍃首页分页🍅首页分页导航🍅首页搜索🍅两个奇怪的问题🍅会员显示登录名🍅注销登录🍅验证码 🍃后台分页 程序框架图 1.…...
【WPF】Border的使用
在 WPF 中,Border 控件是一个非常实用的容器控件,它可以用来为其他控件添加边框、背景颜色、边距等样式。Border 本身没有内置的行为,但是它可以包含一个子元素,并且可以通过各种属性来自定义外观。 Border基本属性 Child: 表示…...
机器学习(西瓜书)第 4 章 决策树
4.1 决策树基本流程 决策树模型 基本流程 在第⑵种情形下,我们把当前结点标记为叶结点,并将其类别设定为该结点所含样本最多的类别;在第⑶种情形下,同样把当前结点标记为叶结点,但将其类别设定为其父结点所含样本最多…...
8、值、指针、引用作为参数或返回值
一、作为参数 1、值传递 #include <iostream> using namespace std;void swap(int a, int b) {cout << __FUNCTION__ << "交换前a:" << a << " b:" << b << endl;int tmp a;a b;b tmp;cout << __FUN…...
向量——通俗地解释
1. 向量 向量是一个既有大小(模)又有方向的对象,它可以用来描述空间中的位置、力或速度等量。我们可以从物理、数学和计算机的角度来看待向量,这三种观点看似不同却有关联。 (1)在物理专业视角下,向量是空间中的箭头&a…...
新书宣传:《量子安全:信息保护新纪元》
《量子安全:信息保护新纪元》 前言本书的看点本书的目录结语 前言 你好! 这是我第一次发布类广告的博文,目的也很单纯,希望以作者的身份介绍一下自己出版的图书——《量子安全:信息保护新纪元》。此书于2024年7月出版…...
Android Framework(五)WMS-窗口显示流程——窗口布局与绘制显示
文章目录 relayoutWindow流程概览应用端处理——ViewRootImpl::setView -> relayoutWindowViewRootImpl::setViewViewRootImpl::performTraversalsViewRootImpl::relayoutWindow Surface的创建WindowManagerService::relayoutWindow了解容器类型和Buff类型的SurfaceBuff类型…...
【计网】计算机网络基础
当自律变成一种本能的习惯, 你就会享受到它的快乐。 --- 村上春树 --- 初识计算机网络 1 初识协议1.1 协议分层1.2 OSI七层模型1.3 TCP / IP协议 2 初识局域网2.1 什么是局域网2.2 MAC地址2.3 局域网通信 3 简单认识IP地址 1 初识协议 1.1 协议分层 首先&#…...
秃姐学AI系列之:实战Kaggle比赛:图像分类(CIFAR-10)
目录 准备工作 整理数据集 将验证集从原始的训练集中拆分出来 整理测试集 使用函数 图像增广 读取数据集 定义模型 定义训练函数 训练和验证数据集 对测试集进行分类并提交结果 准备工作 首先导入竞赛需要的包和模块 import collections import math import os i…...
告别手动切图:用快马ai生成脚本,自动化ps设计稿导出与标注
作为一名长期与PS打交道的设计师,我深知重复性切图标注的痛苦。每次设计稿调整后,手动导出图层、记录样式、测量间距的过程不仅枯燥,还容易出错。最近尝试用InsCode(快马)平台的AI辅助生成自动化脚本,意外发现效率提升显著。以下是…...
AI辅助开发新思路:让快马AI为你的下拉词功能注入智能排序与语义联想
AI辅助开发新思路:让快马AI为你的下拉词功能注入智能排序与语义联想 最近在开发一个需要智能下拉词功能的项目时,我发现传统的前缀匹配方式已经不能满足用户需求了。于是我开始探索如何用AI来增强下拉词功能,让它变得更智能、更人性化。经过…...
Qwen3-0.6B-FP8极速对话工具:STM32F103C8T6最小系统板集成
Qwen3-0.6B-FP8极速对话工具:STM32F103C8T6最小系统板集成 让AI对话能力跑在指甲盖大小的开发板上 1. 场景与痛点 你可能很难想象,一个能进行智能对话的AI模型,居然可以运行在一块只有拇指大小的STM32开发板上。传统的AI模型部署往往需要强大…...
用DeerFlow做竞品分析:5分钟自动生成全面竞品研究报告
用DeerFlow做竞品分析:5分钟自动生成全面竞品研究报告 1. DeerFlow简介:您的智能研究助手 DeerFlow是一款由字节跳动开源的深度研究自动化工具,它整合了语言模型、网络搜索和代码执行能力,能够快速完成复杂的研究任务。这个工具…...
腾讯优图视觉模型应用:Youtu-VL-4B-Instruct在内容审核中的实战
腾讯优图视觉模型应用:Youtu-VL-4B-Instruct在内容审核中的实战 每天,互联网上会产生数十亿张图片和视频。对于内容平台来说,如何确保这些内容安全合规,同时控制审核成本,一直是个头疼的问题。传统的人工审核效率低、…...
旧电脑秒变云服务器:用Proxmox VE打造家庭虚拟化实验室(ZFS配置优化版)
旧电脑秒变云服务器:用Proxmox VE打造家庭虚拟化实验室(ZFS配置优化版) 1. 为什么选择Proxmox VE搭建家庭实验室? 对于个人开发者和技术爱好者来说,拥有一套完整的虚拟化环境是提升技术能力的绝佳途径。Proxmox VE作为…...
【Python内存管理2026权威白皮书】:GIL演进、引用计数重构与GC智能调度三大突破性策略首次公开
第一章:Python智能体内存管理策略2026最新趋势全景概览随着大语言模型驱动的Python智能体(Agent)在生产环境中的深度部署,传统CPython内存管理机制正面临前所未有的挑战:动态工具调用、多轮推理缓存、跨Agent状态共享及…...
Janus-Pro-7B实操手册:批量图片理解任务脚本编写与结果结构化导出
Janus-Pro-7B实操手册:批量图片理解任务脚本编写与结果结构化导出 1. 项目背景与需求场景 在日常工作中,我们经常需要处理大量的图片理解任务。比如电商平台需要分析商品图片中的信息,内容审核团队需要识别图片中的违规内容,或者…...
避坑指南:Windows下OpenCV摄像头索引混乱问题的3种解决之道
避坑指南:Windows下OpenCV摄像头索引混乱问题的3种解决之道 在工业视觉和智能监控领域,多摄像头协同工作是常见需求。但当你在Windows平台上使用OpenCV的VideoCapture接口时,可能会遇到这样的困扰:每次重启系统后,原本…...
Java 设计模式・策略模式篇:从思想到代码实现
一、行为型模式 在面向对象的世界里,如何优雅地组织对象间的交互、分配职责,是每一位开发者都会反复思考的问题。直接硬编码交互逻辑固然简单,但当业务复杂度上升、对象协作关系变得错综复杂时,这种方式就会让代码变得僵化、难以…...
