- 1、本文档共15页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
一起学mini2440裸机开发(三)--S3C2440时钟学习
一起学mini2440裸机开发(三)--S3C2440时钟学习
前言
首先,我们应该知道一点,mini2440开发板在没有开启时钟前,整个开发板全靠一个12MHz的外部
晶振提供频率来工作运行的,也就是说CPU、内存、UART、ADC等所有需要用到时钟频率的硬件都工作
在12MHz下,而S3C2440A可以正常工作在400MHz下,可想而知两者速度相差会有多大了。如果CPU
工作在12MHz频率下,开发板的使用效率非常低,所有依赖系统时钟工作的硬件,其工作效率也很低,
比如,我们电脑里面经常提到的超频,超频就是让CPU工作在更高的频率下,让电脑运算速度更快,虽然
频率是越高越好,但是由于硬件特性决定了任何一个设备都不可能无止境的超频,电脑超频时要考虑到
CPU或主板发热过大,烧坏的危险,同样开发板的主板上的外设和CPU也有一个频率限度,ARM920T
内核的S3C2440的最高正常工作频率如下:
●FCLK:400MHz
● HCLK:100MHz
● PCLK:50MHz
那么咱们怎样让CPU工作在400MHz下,运行的速度大为提高呢?(本段主要是别的
老师的话,嘿嘿,借用没事,只要吸收成自己的知识就行了)
S3C2440有关的时钟种类
总体来说,与S3C2440处理器有关的时钟主要有4种:Fin、FCLK、HCLK、PCLK。
●Fin:外部输入的晶振频率。
●FCLK:用于CPU核。 由Fin得来
●HCLK:用在与AHB总线互连的设备(如存储控制器、LCD控制器、NAND、中断控
制器、DMA等)上。 由FCLK得来
●PCLK:用在与APB总线互连的低速设备(如定时器、UART、ADC等)上。 由FCLK得来
为什么需要不同种类的时钟呢?
由于不同的硬件外设工作时需要的额定频率不同,所以需要产生不同种类的时钟频率。
也就是说,对于一些需要时钟工作的硬件,如果切断其时钟源,就不会再工作了,从而达到
低功耗的目的,这也是便携嵌入式设备的一个特点。
时钟源:开发板外部时钟频率太高容易受到外界环境的干扰,同时为了降低成本,通
常开发板的外部晶振时钟频率都很低,mini2440开发板就用用1个12MHz的晶振来提供时
钟源。但是S3C2440处理器内部工作频率较高,这就需要用锁相环(PLL)来实现倍频功能。
锁相环PLL
锁相环是实现倍频功能的,说白了就是将12MHz成倍的增加,达到实际所需频率。
虽然锁相环有很多指标,咱们完全可以将其理解为一个时钟变换电路,低频晶振输入即可得
到处理器所使用的较高频率的时钟。
S3C2440里有两个PLL:MPLL和UPLL。MPLL用来产生FCLK、HCLK、PCLK的
高频工作时钟,UPLL用来为USB提供工作频率。下图为Fin通过MPLL产生FCLK、HCLK、
FCLK的框图。
上图还有两个控制寄存器(MPLLCON和CLKDIVN),分别用于控制分频比。
MPLLCON控制FCLK和Fin的比例关系
CLKDIVN控制FCLK、HCLK和PCLK之间的比例关系
Fin通过UPLL产生USB设备正常工作所需要的时钟频率,工作原理与上面的MPLL
类似。
系统时钟初始化
这一节很重要啊!!!一定要好好理解,明白系统时钟初始化的流程。
系统上电后,S3C2440处理器会自动锁存OM3和OM2 引脚的电平值,这两个引脚用
于选择外部时钟输入方式,如下表所示。你可以从我们的mini2440开发板的电路图看到,
开发板上的OM3和OM2均接地,即OM[3:2]=00。所以,时钟源为外部晶振。
外部时钟输入方式选择
模式 OM[3:2] MPLL状态 UPLL状态 主时钟源 USB
00 开启 开启 晶振 晶振
01 开启 开启 晶振 外部时钟
10 开启 开启
文档评论(0)