day47

ARM系统时钟架构与施密特触发器

第一部分:系统时钟架构基础

  1. 时钟源

· 外部时钟源:由外部晶振提供,频率为24MHz。

· 时钟系统负责为CPU内核、总线及各类外设提供稳定的工作时钟。

  1. 锁相环(PLL)

· PLL(锁相环电路)用于将低频的输入时钟倍频到系统所需的高频时钟。

· 外部24MHz晶振输入后,分别供给多个PLL进行倍频。

  1. 各个PLL的功能划分

· PLL1(ARM PLL):专门为Cortex-A7内核提供时钟,频率可配置,目标频率1056MHz。

· PLL2(System PLL / 528 PLL):系统PLL,固定528MHz,用于产生系统总线及外设时钟。

· PLL3(USB1 PLL / 480 PLL):固定480MHz,用于USB及相关外设。

· PLL4(Audio PLL):用于音频相关设备,如麦克风、扬声器、蜂鸣器。

· PLL5(Video PLL):用于视频相关设备,如显示器、摄像头。

· PLL6(Ethernet PLL):用于有线网卡等以太网设备。

· PLL7(USB2 PLL):仅用于USB UTMI(物理层)测试,内部与USB1 PLL连通。

第二部分:时钟分频与分配机制

  1. 相位分数分频器(PFD)

· PFD(Phase Fractional Divider)用于对PLL输出进行分频,产生不同频率的时钟分支。

· PLL2的PFD输出:PFD0输出352M,PFD1输出594M,PFD2输出400M(或396M),PFD3输出297M。

· PLL3的PFD输出:PFD0输出720M,PFD1输出540M,PFD2输出508M,PFD3输出454.7M。

  1. 分频器(Divider)分类

· 固定分频器(SD):分频比固定不变。

· 2位分频器:分频范围1~4。

· 3位分频器:分频范围1~8。

· 6位分频器:分频范围1~64。

  1. 多路选择器(MUX)与时钟门控(CG)

· 多路选择器(MUX):用于从多个时钟源中选择一路作为输出。

· 时钟门控(CG):用于在不需要时关闭时钟,降低功耗。

· 旁路模式:在系统启动或PLL未锁定时,直接使用24MHz晶振时钟,绕过PLL。

  1. 关键寄存器与配置参数

· 通过CCM_ANALOG_PLL_ARM、CCM_ANALOG_PFD_528n、CCM_ANALOG_PFD_480n等寄存器配置PLL和PFD。

· 分频因子可通过CACRR、CBCDR、CSCMR1、CBCMR等寄存器设置。

第三部分:系统时钟路径与时钟根

  1. ARM_CLK_ROOT(内核时钟)

· 来源:由PLL1输出1056MHz,经过3位分频器(分频比1~8)后得到。

· 目标频率:通过CACRRARM_PODF配置,通常工作在396MHz~528MHz。

· 作用:直接驱动Cortex-A7内核。

  1. AHB_CLK_ROOT(总线时钟)

· 来源:由PLL2(528MHz)经过3位分频器后得到。

· 目标频率:通过CBCDRAHB_PODF配置,典型频率132MHz。

· 作用:驱动ARM-uSDHC、EPIT、I2C等总线外设。

  1. PERCLK_CLK_ROOT(外设时钟)

· 来源:由PLL2经过3位分频器及6位分频器后得到。

· 目标频率:通过CSCMR1PERCLK_PODF配置,典型频率66MHz。

· 作用:驱动ADC、WDOG等外设。

  1. IPG_CLK_ROOT(接口时钟)

· 来源:同样由PLL2分频得到,频率约66MHz。

· 作用:驱动部分外设接口。

  1. 启动流程中的时钟切换

· 启动时,先选择osc_clk(24MHz晶振),让ARM暂时工作在24MHz。

· 配置PLL1及其他PLL,等待PLL锁定。

· 将PLL1输出切换为系统时钟(通过step_clk选择),最终改回PLL_main_clk。

· 注意:配置PLL前需先设置好二分频设置,避免ARM内核故障。

第四部分:施密特触发器原理

  1. 核心作用

· 用于将带噪声的模拟信号或缓慢变化的边沿信号,整形为干净的数字方波信号。

· 利用正反馈机制,实现信号去抖动和抗噪声。

  1. 电路构成

· 包含运算放大器(Op-Amp)、反相器、电阻网络(r1、r2、r3)。

· 在特定条件下,r1 = r2 = r3 = r。

  1. 阈值计算与触发点

· 上触发点(上门限):当输出电压Vout为5V时,同相输入端电压V+ = 5V × r / (0.5r + r) = 3.3V。

· 下触发点(下门限):当输出电压Vout为0V时,同相输入端电压V+ = 5V × 0.5r / (0.5r + r) = 1.6V。

  1. 迟滞特性

· 上触发点与下触发点之间的电压差(3.3V - 1.6V = 1.7V)称为迟滞电压。

· 输入信号在上升过程中需高于3.3V才触发翻转,下降过程中需低于1.6V才触发翻转。

· 该特性有效防止了信号在阈值附近的微小波动导致的反复翻转,增强了抗干扰能力。

  1. 信号处理效果

· 输入一个带有噪声或尖峰的缓慢边沿信号。

· 经过施密特触发器处理后,输出边沿陡峭、无抖动的高质量数字方波。

关键概念辨析

PLL vs PFD

· PLL:锁相环,用于将输入时钟倍频到高频。

· PFD:相位分数分频器,对PLL输出进行分频,产生多个频率分支。

分频器 vs 时钟门控

· 分频器:改变时钟频率,用于调整目标模块的工作速率。

· 时钟门控:不改变频率,仅控制时钟的通断,用于节能。

旁路模式 vs PLL模式

· 旁路模式:直接使用外部晶振时钟,不经过PLL,频率低且稳定,用于启动。

· PLL模式:使用PLL倍频后的高频时钟,用于系统正常运行。

施密特触发器的迟滞

· 迟滞电压是为了提高抗噪声容限,避免输入信号在单一阈值附近震荡产生误触发。

相关推荐
恒锐丰科技林技术员1 小时前
EG1164 高压大电流升压同步整流芯片解析
经验分享·嵌入式硬件·硬件工程
CHENKONG_CK1 小时前
破解制鞋打磨痛点:RFID赋能去毛刺工序自动化升级
网络·单片机·嵌入式硬件·网络协议·tcp/ip
祖力552 小时前
ARM时钟
嵌入式硬件·arm·时钟·imx6ull
陈年老古董2 小时前
MediaPipe 姿态检测与脸部关键点检测
笔记·python·opencv·学习·dlib
三佛科技-187366133972 小时前
128KB~512KB Flash车规级MCU选型指南(FT32A072 / FT32A103 系列)
单片机·嵌入式硬件
彧azz2 小时前
操作系统时间管理与系统核心板块学习总结
c语言·笔记·学习·系统架构
Brilliantwxx2 小时前
【STM32】 SPI Flash 驱动开发实战:阻塞模式驱动 W25Q64(含工程代码)
开发语言·stm32·单片机·嵌入式硬件
欣悦财务2 小时前
怎么判断代理记账收费值不值,把费用折成服务密度再比
经验分享
zhangrelay3 小时前
《机器人控制器设计与编程》课程习题资料-2026
linux·笔记·学习·ubuntu