当前位置: 首页 > news >正文

怎么理解锁相环主时钟(PLL)怎么做到对时钟进行倍频?

⑤ 锁相环主时钟(PLL)

  STM32F4xx具有两个PPL时钟,PLL 的主要作用是对时钟进行倍频,然后把时钟输出到各个功能部件。 PLL 有两个,一个是主 PLL,另外一个是专用的 PLLI2S,他们均由 HSE 或者 HSI 提供时钟输入信号。


我用更通俗的方式给你解释一下 PLL 是怎么给时钟 "加速" 的:

想象你在玩一个 "模仿游戏":

  • 你(VCO)负责拍手,一开始节奏随便
  • 你的朋友(参考时钟)有一个固定节奏的拍手(比如每秒 2 下)
  • 另一个朋友(分频器)会把你拍的手数 "除以 N" 再告诉你
  • 裁判(相位比较器)会对比你朋友的节奏和经过除法后的你的节奏

游戏规则:

  1. 如果你的节奏太慢,经过除法后比朋友的慢,裁判就喊 "快点"
  2. 如果你的节奏太快,经过除法后比朋友的快,裁判就喊 "慢点"
  3. 直到你拍的节奏除以 N 后,正好等于朋友的节奏(比如你每秒拍 4 下,N=2,4/2=2)

这时候你的节奏就是朋友的 N 倍(4=2×2),这就是 PLL 的倍频原理!

简单说,PLL 就像一个 "自动调速器":

  • 通过不断比较和调整
  • 让输出节奏(频率)稳定在输入节奏的 N 倍
  • N 是可以设置的(比如 2 倍、5 倍、10 倍)

这样一来,我们就能用一个低频时钟信号,通过 PLL 得到稳定的高频时钟信号了。


咱们用更具体的例子一步步说清楚 PLL 是怎么实现倍频的,就拿 "把 10MHz 的时钟变成 50MHz" 来说(也就是 5 倍频):

第一步:准备三个核心 "工具"

  1. VCO(压控振荡器):相当于一个 "可调速的马达",给它的电压越高,转得越快(输出频率越高)。
  2. 分频器:相当于一个 "计数器",设定为 "5 分频"—— 每收到 5 个 VCO 的信号,才输出 1 个信号。
  3. 相位比较器:相当于一个 "检测器",能同时看两个信号:
    • 输入的原始时钟(10MHz)
    • 分频器送回来的信号

第二步:开始 "调速" 过程

假设一开始 VCO 输出的是 30MHz(还没到目标 50MHz):

  1. 分频器对 30MHz 进行 5 分频,得到 30÷5=6MHz,送回给相位比较器。
  2. 相位比较器发现:送回的 6MHz 比 原始的 10MHz 慢(节奏跟不上)。
  3. 于是它输出一个 "升压信号",给 VCO 的电压升高一点。
  4. VCO 电压升高后,输出频率变快,比如升到 40MHz。

第三步:继续调整直到稳定

  1. 40MHz 经过 5 分频,得到 8MHz,还是比 10MHz 慢。
  2. 相位比较器继续 "升压",VCO 输出升到 50MHz。
  3. 50MHz 经过 5 分频,正好是 10MHz,和原始时钟节奏完全一致。
  4. 这时候相位比较器觉得 "没问题了",不再调整电压,VCO 就稳定输出 50MHz。

关键:为什么能稳定在 5 倍?

因为分频器设定了 "5",所以只有当 VCO 输出是原始时钟的 5 倍时,分频后的信号才能和原始时钟 "对齐"。就像拼图一样,只有这一种情况能严丝合缝,PLL 会自动找到这个状态并保持住。

只要改变分频器的数值(比如改成 3),就能得到原始时钟 3 倍的输出,这就是 PLL 能灵活实现倍频的原因。

http://www.lryc.cn/news/604769.html

相关文章:

  • Keil STM32工程各文件作用
  • AI框架工具FastRTC快速上手2——整体框架及Stream类详解
  • 方块世界:失落文明的遗产
  • Deforum Stable Diffusion,轻松实现AI视频生成自由!
  • 语音识别dolphin 学习笔记
  • UE5多人MOBA+GAS 番外篇:将冷却缩减属性应用到技能冷却中
  • 设计模式十四:适配器模式(Adapter Pattern)
  • Linux ps -ef 命令解析
  • 基于成像空间转录组技术的肿瘤亚克隆CNV原位推断方法
  • composer 常用命令
  • 智慧城市SaaS平台|市政公用管理系统
  • 从单机到分布式:Redis如何成为架构升级的胜负手
  • 串口接收数据包(协议带帧头帧尾)的编程实现方法:1、数据包格式定义结构体2、使用队列进行数据接收、校验解包
  • 三十二、【Linux网站服务器】搭建httpd服务器演示虚拟主机配置、网页重定向功能
  • uni-app webview 的message无法触发的解决方案
  • MacTex+Vscode数学建模排版
  • 字节跳动“扣子”(Coze)开源:AI智能体生态的技术革命
  • AI Compass前沿速览:可灵创意工坊、字节Coze StudioCoze Loop、通义万相2.2 、智谱GLM-4.5、腾讯混元3D世界模型开源
  • 添加捕捉吸附标识(使用QT+OpenGL开发三维CAD)
  • 【翻译】Label Studio——开源标注工具README.md
  • 2025年DDoS攻防战:六层防护体系构建业务“数字免疫”
  • ADA4622-2ARMZ-R7 ADI双通道精密运算放大器 ±0.25μV超低失调+0.1μV/°C温漂
  • K8s 备份与恢复利器:Velero 实战指南
  • click和touch事件触发顺序 糊里糊涂解决的奇怪bug
  • VUE -- 基础知识讲解(三)
  • 前端安全防护:XSS、CSRF与SQL注入漏洞深度解析与防御
  • 50天50个小项目 (Vue3 + Tailwindcss V4) ✨ | 3dBackgroundBoxes(3D背景盒子组件)
  • 前端兼容性问题全面解决方案
  • Vue2-封装一个看起来像左右分布表格的表单组件
  • JetBrains Annotations:从入门到落地,彻底告别 NullPointerException