5. STM32 时钟系统分配

文章目录

  • [下述将以stm32f407 为例](#下述将以stm32f407 为例)
  • [1. 时钟系统及频率分析](#1. 时钟系统及频率分析)
  • [2. 时钟配置](#2. 时钟配置)

下述将以stm32f407 为例

1. 时钟系统及频率分析

上述STM32F4时钟系统图解析入下:

  • STM32F407 系列微控制器(基于 Cortex-M4 内核,带 FPU)的工作频率配置如下,其核心及外设时钟均由时钟树(通过 PLL 倍频、分频器等从外部 / 内部振荡器衍生)生成:

    1. 核心时钟(FCLK Cortex clock,即 HCLK)
    • 最高频率:168 MHz(这是 STM32F407 的标称最高主频)。
    • 作用:作为 Cortex-M4 内核的工作时钟,直接决定 CPU 执行指令的速度(运算、数据处理等),是整个系统的 "核心频率"。
    1. 系统时钟(SYSCLK)
    • 最高频率:168 MHz(与核心时钟同源,通常通过 PLL 从外部晶振(HSE)或内部高速振荡器(HSI)倍频得到)。
    • 例如:外部 8 MHz 晶振(HSE)经 PLL 倍频(8 MHz × 21 = 168 MHz)后作为系统时钟。
    1. 总线时钟
    • AHB 总线时钟(HCLK):最高 168 MHz(直接来自系统时钟,或经 AHB 预分频器分频,通常配置为与系统时钟同频),为内核、内存(SRAM、Flash)及 AHB 外设(如 DMA、ETH 等)提供时钟。
    • APB1 总线时钟(PCLK1):最高 42 MHz(低速外设总线)。
    • 挂载外设:USART25、SPI23、I2C13、CAN、TIM27 等。
    • APB1 定时器时钟:当 APB1 预分频器 > 1 时,定时器时钟 = 2 × PCLK1(最高 84 MHz)。
    • APB2 总线时钟(PCLK2):最高 84 MHz(高速外设总线)。
    • 挂载外设:USART1、SPI1、ADC1~3、TIM1、TIM8、GPIO 等。
    • APB2 定时器时钟:当 APB2 预分频器 > 1 时,定时器时钟 = 2 × PCLK2(最高 168 MHz)。
    1. 其他关键时钟
    • USB OTG FS 时钟:固定 48 MHz(由 PLL 分频得到,用于 USB 通信)。
    • 以太网(ETH)时钟:通常为 50 MHz(通过外部 PHY 或内部 PLL 生成,用于以太网通信)。
    • 内部振荡器:
      • HSI(高速内部振荡器):16 MHz(默认启动时钟,可作为 PLL 输入)。
      • LSI(低速内部振荡器):40 kHz(用于 RTC、独立看门狗等)。
    • 外部振荡器(HSE):通常为 8 MHz 或 25 MHz(硬件设计决定,精度高于内部振荡器,常用作 PLL 输入以获得稳定高频时钟)。
      总结
      STM32F407 的最高核心频率为 168 MHz,外设时钟根据总线类型(APB1/APB2)和功能需求(如 USB、ETH)有不同的最高限制。实际应用中可通过 STM32CubeMX 配置时钟树,在功耗与性能之间平衡(例如降低主频以减少功耗)。

2. 时钟配置

以正点原子的开发板, 开发板的外部高速晶振和外部低速晶振分别是:8MHz和32.768KHz, 通过stm32cubemx 通过分频倍频后配置如下:

相关推荐
fie88891 天前
基于51单片机的航模遥控器6通道接收机程序
单片机·嵌入式硬件·51单片机
bu_shuo1 天前
嵌入式硬件工程师VS单板硬件工程师
嵌入式硬件·电子工程师·单板硬件
llilian_161 天前
选择北斗导航卫星信号模拟器注意事项总结 北斗导航卫星模拟器 北斗导航信号模拟器
功能测试·单片机·嵌入式硬件·测试工具·51单片机·硬件工程
Yyq130208696821 天前
MH2457,‌国产 32 位屏驱 MCU‌芯片,支持‌1080P 高清显示‌与‌以太网通信‌,广泛应用于两轮车仪表盘及工控屏等领域
单片机·嵌入式硬件
爱分享的阿Q1 天前
STM32现代化AI开发环境搭建:从Keil到VSCode+AI的范式转移
人工智能·vscode·stm32
爱吃程序猿的喵1 天前
南邮计科电工电子实验B《RLC串联谐振电路》实验报告
单片机·嵌入式硬件
独小乐1 天前
009.中断实践之实现按键测试|千篇笔记实现嵌入式全栈/裸机篇
linux·c语言·驱动开发·笔记·嵌入式硬件·arm
XINVRY-FPGA1 天前
XC7VX690T-2FFG1157I Xilinx AMD Virtex-7 FPGA
arm开发·人工智能·嵌入式硬件·深度学习·fpga开发·硬件工程·fpga
bubiyoushang8881 天前
利用STM32实现Modbus通信(RTU从机方案)
stm32·单片机·嵌入式硬件
cmpxr_1 天前
【单片机】常用设计模式
单片机·嵌入式硬件·设计模式