学嵌入式学一个理念,彻底搞懂单片机时钟架构

学嵌入式学一个理念,彻底搞懂单片机时钟架构

716866c6529328a11013f2a7c8e56a8e.png

\\\插播一条:我自己在今年年初录制了一套还比较系统的入门单片机教程,想要的同学找我(禾厶-亻言-手戈)免費的。最近比较闲,带做毕设,带学生参加省级以上比赛///

7360b93385cb48193fdd015284bc188a.png

d039ab13067cb39c6da1ff3a544a9a61.png

大家是不是常常会遇到这种情况:

·咦,这个外设的输出频率是多少呢?

·这个IIC通信的通信频率,我怎么选择呢?

·系统时钟是多少呢?

·我怎么才能精确延时1ms呢?

如果这些问题时不时的困扰你,那么推荐看看这篇文章,有助于理解系统时钟架构!

注:这篇文章,基于DSP的TMS320F28377D单片机,但是,其相关原理,具有通用性。可以说,搞明白学习方法,不同的单片机只是平台不同而已!授人以鱼不如授人以渔!

1.时钟的基本概念

什么是时钟?

时钟就是单片机的心脏。每跳动一下。整个单片机的各个电路就同步的动作一下。

时钟分为内部时钟和外部时钟!

什么是时钟周期?

时钟周期也称为振荡周期,定义为时钟脉冲的倒数。

时钟周期就是单片机外接晶振的倒数,例如12M的晶振,它的时钟周期就是1/12us.

相关的还有:机器周期,指令周期等,注意要查漏补缺!

2.如何学习系统时钟

第一步:打开芯片的数据手册,查看基本的信息。

例如:(基于TMS320F28377D)

我们可以看到这些信息:

·芯片所提供的时钟频率

·内存大小

·系统外设等等

85842d129e87fa464e4321fd5aa2b1e8.png

黄色标记的是芯片直接提供的时钟频率,其他圈出来的是外设的一些信息,

数据手册可以提供给大家一些所想要知道的信息,希望能仔细阅读此部分,留有印象即可,以后遇到详细的知识点可回头翻阅!

第二步:对时钟架构图作详细了解

除了数据手册,当然还有用户指南!

在用户指南中,找到时钟架构图,例如:

0cde29b538983eca3868143ae2f71753.png

时钟架构图,可以明确的表示一些外设、内存等所提供的时钟信息,相关寄存器信息等等。然后配置相关的寄存器,即可进行倍频,分频操作!

以TMS320F28337D为例,作以下分析:

·分析时钟源(时钟图最左侧部分)

0a79ecf5010c32bf1fd642eef3fa4ee4.png

·INTOSC1:备用内部振荡器,内部有看门口定时器和丢失时钟检测电路,用于检测时钟丢失后,第一时间切换至该时钟源

·INTOSC2:初级内部振荡器,上电后,该振荡器提供10MHz的频率,主要用于Boot ROM和系统时钟。

·X1(XTAL):X1,X2可以外接外部时钟,能够用于主时钟和辅助时钟源

·AUXCLKIN:一个额外的时钟源,主要用于CAN,USB等通信,通过数据手册,可以查到相关信息。

·系统时钟分析

d61e910da510daea290c81f85e3ab194.png

如上面,所描述的,振荡器为10MHz,CPU怎么提供200MHz的主频呢?

当然是经过倍频,分频啦!

·CLKSRCCTL用来选择使用哪一个时钟源作为OSCCLK(主参考时钟)的时钟信号

·生成的时钟信号,一路通过PLL锁相环,生成PLLRAWCLK(系统PLL输出时钟)

·经过SYSPLLCTL,选择哪一个作为后续的时钟输出

·在经过SYSCLK Dvider进行分频,得到提供给CPU的时钟主频。

·外设时钟分析

5134d582b86ea4fb78cd0e3c2cb9f99f.png

·蓝色圈出来的,是相关的寄存器,用来配置时钟的分频

·红色圈出来的,是该频率配置后,用于哪些外设。

·额外时钟源分析

4f552df9a506ca20069688a8cafbad18.png

·AUXCLKIN:一个额外的时钟源,主要用于CAN,USB等通信,通过数据手册,可以查到相关信息。

·CLKSRCCTL2:对输入的时钟源(AUXCLKIN、INTOSC2、XTAL)作出选择,得到AUXOSCCLK时钟(辅助参考时钟)

·通过Auxiliary PLL辅助锁相环,得到输出的时钟信号AUXPLLRAWCLK,再而进行分频,用于其他外设时钟

划重点!划重点!划重点!

学习单片机,必不可缺的就是数据手册和用户指南。

数据手册,可以快速提供单片机所支持的外设,内存的数据信息,方便我们快速查阅

用户手册,对数据手册进行详细的解释,哪一部分如何使用,对原理进行详细解释!

学习系统时钟

.先去数据手册,确定单片机所支持的系统时钟频率

.再到用户手册,寻找该单片机的时钟架构图

.对架构图的时钟源作详细分析

.对架构图的时钟输出作详细分析

.对应不同的外设,对不同的寄存器进行相关配置即可!

好啦,以上就是我的进修该局部的方法

假如你还是对时钟有所困惑,评论区里我们能够详细探讨呦!

感觉写的不错,别忘记?点赞+喜爱?呦!

文章同步更新于公从号?移步IT之巅
公从号主要用来分享一些新资源、总结一些新知识
快去

2d033bf4681c1497ffc9002f320fd11a.pngd210579ec3291a3484f46a71b88b2ad8.png

绿色图标【‟で】liutianwang123

猜你喜欢

转载自blog.csdn.net/l16756062003/article/details/124975142
今日推荐