【无标题】

PLL、Prescaler、FPD (PFD) 作用

PLL (Phase-Locked Loop,锁相环)

定义:将外部低频晶振(IMX6ULL 为 24MHz)倍频 为芯片内部所需高频时钟的核心电路。

作用:频率倍增,提供 CPU、总线、外设的高频时钟源;相位锁定,输出稳定、低抖动的时钟信号

Prescaler (预分频器)

定义:时钟树中的频率 "减速器"。

作用:对高频时钟进行整数分频(输出 = 输入 / N),将高频时钟降至外设可接受的频率(如 66MHz→1MHz)。

特点:IMX6ULL 定时器(EPIT/GPT)内置12 位预分频器,分频范围广(1~4096)。

PFD (Phase Fractional Divider,相位分数分频器)

能分频也能倍频

IMX6ULL PLL 与 PFD 数量

PLL 总数:7 个

PLL1 (ARM_PLL):CPU 内核时钟,最高 1.3GHz

PLL2 (528_PLL):系统总线时钟,固定 528MHz

PLL3 (USB1_PLL):USB PHY 时钟,固定 480MHz

PLL4 (Audio_PLL):音频时钟

PLL5 (Video_PLL):视频时钟

PLL6 (ENET_PLL):以太网时钟,500MHz

PLL7 (USB2_PLL):第二个 USB PHY 时钟
PFD 总数:8 个

PLL2 分出 4 路 PFD:PLL2_PFD0 ~ PLL2_PFD3

PLL3 分出 4 路 PFD:PLL3_PFD0 ~ PLL3_PFD3

简述ARM PLL的配置流程

cpp 复制代码
一    kernal: CCM_ANALOG_PLL_ARMn
1 先选择osc_clk,让step_clk为24MHz
2 再将PLL1的输出改成step_clk,让ARM暂时工作在24MHz;
3 配置PLL为1056,注意设置倍频因子之前先把PLL之后的二分频设置好,避免ARM内核故障!!
4 最后改回pll1_main_clk

二    528 PLL:CCM_ANALOG_PFD_528n

三    480 PLL:CCM_ANALOG_PFD_480n

四    AHB_CLK_ROOT(132M)
1 CBCMR[PRE_PERIPH_CLK_SEL]
2 CBCDR[PERIPH_CLK_SEL]
3 CBCDR[AHB_PODF]

五    IPG_CLK_ROOT(66M)
CBCDR[IPG_PODF]

六    PERCLK_CLK_ROOT(66M)
1 CSCMR1[PERCLK_CLK_SEL]
2 CSCMR1[PERCLK_PODF]

IMX6ULL中的EPIT和GPT的工作原理是什么?

EPIT工作原理:

增强型周期中断定时器,是一个32为向下计数器,有三个寄存器,分别是计数寄存器、加载寄存器、比较寄存器,通过向加载寄存器写入初值,自动写入计数寄存器,然后向下计数,会与比较寄存器中的值进行比较,如果比比较寄存器的值小,就会触发中断,当计数寄存器减为0后,会再次加载初值重新向下计数。

GPT工作原理:

通用目的的定时器,是一个32尾向上定时器,有两路输入捕获和3路输出比较中断,当工作在自由运行模式时,当计数到OxFFFFFFFF时,会重新回滚到Ox00000000继续向上计数,就可以实现高精度延时,通过读取CNT寄存器,记录当前的计数值,然后通过死循环比较判断到对应的延时是否到达,即可完成高精度阻塞式延时。

相关推荐
笨笨饿1 小时前
#58_万能函数的构造方法:ReLU函数
数据结构·人工智能·stm32·单片机·硬件工程·学习方法
FreakStudio3 小时前
无硬件学LVGL:基于Web模拟器+MiroPython速通GUI开发—布局与空间管理篇
python·单片机·嵌入式·面向对象·并行计算·电子diy
三品吉他手会点灯5 小时前
STM32F103 学习笔记-21-串口通信(第4节)—串口发送和接收代码讲解(中)
笔记·stm32·单片机·嵌入式硬件·学习
项目題供诗7 小时前
STM32-LED闪烁&LED流水灯&蜂鸣器(四)
stm32·单片机·嵌入式硬件
xiangw@GZ9 小时前
EMC原理:四大抗扰度测试原理
单片机·嵌入式硬件
QH1392923188010 小时前
KEYSIGHT E5071C 端网络分析仪
网络·功能测试·嵌入式硬件·物联网·单元测试·集成测试·模块测试
I_Am_Zou11 小时前
STM32实战系列|智能摄像头巡检系统完整演示:第一讲
stm32·单片机·嵌入式硬件
发发就是发12 小时前
USB系统架构概述:从一次诡异的枚举失败说起
驱动开发·单片机·嵌入式硬件·算法·fpga开发
发发就是发13 小时前
TTY子系统与线路规程:那个让我深夜抓狂的串口“丢包”问题
linux·服务器·驱动开发·单片机·嵌入式硬件
RFCEO14 小时前
Rust编程基础课 第1课时:Rust简介与环境搭建 STM32 RUST嵌入式编程实战
stm32·嵌入式硬件·rust·probe-rs·rust工具链·rustup、cargo·stm32 rust适配