首页/新闻资讯/正文详情

ARM裸机开发-时钟

发布时间:2026/9/26 6:45:47 来源:云帆数科 栏目:资讯中心
ARM裸机开发-时钟
目录一.基本概念1.变频​编辑2.时钟树3.基本流程二.具体实现1.配置ARM时钟1.CCSR寄存器2.CCM_ANALOG-PLL_ARM寄存器3.CACRR2.配置PLL2和PLL33.配置三大根时钟1.CBCMR寄存器2.CBCDR寄存器3.CSCMR1寄存器一.基本概念1.变频使用的芯片imx6ull是无源晶振表示在工作时不需要额外电压下图为该芯片的时钟配置PLL1为内核配置时钟PLL2为外设配置时钟PLL3为USB设备配置时钟一共7个PLL8个PFD。2.时钟树时钟根产生器负责对不同频率设备牵线分频器2位分频器表示从1到4的分频3位则表示1到8OSC晶振24Mhz3.基本流程配置步骤如下1.配置ARM时钟为528MHZ2.配置PLL2下的4个PFD和PLL3下的4个PFD3.配置三大根时钟132MHZ,66MHZ,66MHZ)二.具体实现1.配置ARM时钟在配置频率时先将cg门关闭配置频率稳定后再打开cg门传给外设否则若当外设频率较低时打开cg门将高频传给外设由于频率急剧升高可能导致外设死机而由于ARM没有配置cg门所以要更改ARM的时钟频率应特殊处理如下先采用step_clk路通过选通门选择osc_clk或者下面的时钟频率先将ARM的工作频率切换为24MHZ再配置PLL设置二分频率待稳定后切换为pll1_main_clk传给ARM.1.CCSR寄存器选通线路2.CCM_ANALOG-PLL_ARM寄存器设置PLL频率为10563.CACRR设置PLL1为二分频unsigned int t 0; // 1. 配置ARM时钟 CCM-CCSR ~(1 8);//1选择24MHZ CCM-CCSR | (1 2);//2,切换step_clk t CCM_ANALOG-PLL_ARM;//3设置频率1056 t ~(3 14); t | (1 13); t | (88 0); CCM_ANALOG-PLL_ARM t; CCM-CACRR | (1 0); //设置二分频 CCM-CCSR ~(1 2);//4.切换回pll1_main2.配置PLL2和PLL3按照下图配置PLL2锁倍频所以参考手册没有只需修改PLL2下的4个PFD可见只需修改FRAC域配置PFD倍频因子CLKGATE打开cg门// 2. 配置PLL2 PFD t CCM_ANALOG-PFD_528; t ~((0x3F 0) | (0x3F 8) | (0x3F 16) | (0x3F 24));//先将倍频因子位清零 t ~((1 7) | (1 15) | (1 23) | (1 31));//打开4个PFD的cg门 t | (27 0) | (16 8) | (24 16) | (32 24);//配置倍频因子由图中公式528*18/对应频率得到 CCM_ANALOG-PFD_528 t; // 3. 配置PLL3 PFD同上 t CCM_ANALOG-PFD_480; t ~((0x3F 0) | (0x3F 8) | (0x3F 16) | (0x3F 24)); t ~((1 7) | (1 15) | (1 23) | (1 31)); t | (12 0) | (16 8) | (17 16) | (19 24);3.配置三大根时钟按照下图时钟树红线走向配置相应的寄存器设置为最大频率运行速度快1.CBCMR寄存器选中PLL2具体所对应的哪个PFD2.CBCDR寄存器选中PLL2设置AHB倍频因子IPG倍频因子3.CSCMR1寄存器选中PERCLK根时钟配置一分频因子// 4. 配置三个根时钟 t CCM-CBCMR; t ~(3 18); t | (1 18); //选中PFD2 CCM-CBCMR t; t CCM-CBCDR; t ~(1 25); //选通PLL2 t ~((7 10) | (3 8)); //清空分频因子位 t | (1 11) | (1 8); //设置分频因子,bit11为设置AHB_CLK3分频,bit8位为设置二分频给IPG_CLK CCM-CBCDR t; CCM-CSCMR1 ~(1 6);//设置PERCLK继承来自IPG_CLK CCM-CSCMR1 ~(0x3F 0);//设置一分频

相关推荐

JVM GC调优深入解析:从内存模型到收集器选型与线上排查
JVM GC调优深入解析:从内存模型到收集器选型与线上排查

很多刚接触 JVM 的同学,一听到“GC 调优”这四个字,脑子里先浮现的是一排排冷冰冰的参数和复杂的日志,觉得那是资深架构师才配碰的东西。但我在实际带实习生的时候发现,真正困扰大家的往往不是某个参数记不住,而是不知… · 2026/9/26 6:45:41

Java线程状态与JUC:从BLOCKED/WAITING到线程池死锁排查
Java线程状态与JUC:从BLOCKED/WAITING到线程池死锁排查

干我们这行,第一次线上事故排查,多半就是死在“线程状态”这一关上。我印象特别深的是实习期第一次处理线上告警:半夜服务线程数暴涨,jstack 一打,满屏都是 WAITING 和 BLOCKED,我只能对着日志干着急。后来… · 2026/9/26 6:45:41

AI Agent开发实践:从概念到可部署系统
AI Agent开发实践:从概念到可部署系统

我无法根据该标题生成符合要求的博文内容。原因如下:标题“为什么中美头部Agent,不约而同走向开放?”中,“Agent”在此语境下明显指向人工智能领域的智能体(AI Agent),但“中美头部Agent”这一表… · 2026/9/26 6:45:41

Linux PCI驱动框架解析:从设备匹配到probe/remove的完整生命周期
Linux PCI驱动框架解析:从设备匹配到probe/remove的完整生命周期

1. 为什么搞驱动要先啃PCI这块硬骨头做Linux驱动开发的朋友早晚会撞上PCI。不管你是写网卡驱动、显卡驱动、NVMe硬盘驱动,还是各类采集卡、加速卡、FPGA板卡的驱动,底层几乎都是PCI或PCIe接口。说白了,PCI就是CPU与外部高速设备之间最通用的一… · 2026/9/26 10:25:36

用 Claude Code 斜杠命令模板系统,把重复工作变成一条命令
用 Claude Code 斜杠命令模板系统,把重复工作变成一条命令

用 Claude Code 写代码大半年,我最大的体会是:它强是强,但如果你每次都靠临时对话让它干活,你会发现自己像在伺候一个"记性差又话多"的同事。直到我把常用任务都沉淀成一套 claude-code-templates,把重复工作… · 2026/9/26 10:25:36

Cortex 自定义域名配置指南:使用 AWS Route 53 为你的 API 绑定专属子域名
Cortex 自定义域名配置指南:使用 AWS Route 53 为你的 API 绑定专属子域名

后端云原生模型推理服务MLOps人工智能 【免费下载链接】cortex Production infrastructure for machine learning at scale 项目地址: https://gitcode.com/gh_mirrors/co/cortex 点击查看 免费下载 本指南面向部署了 Cortex 机器学习生产集群的用户,完… · 2026/9/26 10:25:36

AI Agent Harness Engineering 技术选型误区:为什么越先进的技术越难落地?TaoToken 统一 Key 通道的配置骨架与验证动作
AI Agent Harness Engineering 技术选型误区:为什么越先进的技术越难落地?TaoToken 统一 Key 通道的配置骨架与验证动作

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 10:25:24

Windows原生Socket服务器搭建指南
Windows原生Socket服务器搭建指南

Windows原生服务器教程 在Windows环境下,搭建原生服务器通常涉及使用系统自带的工具或API进行网络服务开发。以下是几种常见的方法和步骤。 1. 使用原生Socket API搭建服务器 Windows提供了Berkeley Socket API,可用于创建网络服务器。以下是一个简单的… · 2026/9/26 10:25:18

Uber Go 编码规范实战:避免参数语义不明确(Avoid Naked Parameters)
Uber Go 编码规范实战:避免参数语义不明确(Avoid Naked Parameters)

文档 【免费下载链接】uber_go_guide_cn Uber Go 语言编码规范中文版. The Uber Go Style Guide . 项目地址: https://gitcode.com/gh_mirrors/ub/uber_go_guide_cn 点击查看 免费下载 本篇指南脱胎于本仓库 src/param-naked.md,属于 Uber Go 编码规范… · 2026/9/26 10:25:18

数据库课后习题答案别硬背:当测试用例集刷,效率翻倍
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍

简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21

OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40

向下兼容与向上兼容:接口设计中的兼容性策略与工程实践
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践

一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码