您的位置:首页 > 其它

arm学习笔记-时钟(s3c2451)

2016-04-04 22:26 295 查看




主锁相环MPLL作为系统时钟的参考时钟
辅助锁相环EPLL作为特殊的功能块的参考时钟
MPLL的配置方法
OM【0】寄存器配置为0,则时钟源为XTl,配置为1,则时钟源为外部时钟EXTCLK



EPLL的配置方法
如下图配置CLKSRC【8】,CLKSRC【7】和OM【0】寄存器



正常状况下当改变MPLL时,此时会产生一段locktime,在改变PLL的这段时间,时钟不会作被提供给内部的资源



示例配置时钟REGITER产生特定的频率

eg:PLL 输出频率为533MHz时,

时钟
ARMCLK
HCLK
PCLK
DDRCLK
SSMCCLK
频率
533MHz
133MHz
66MHz
266MHz
66MHz
配置寄存器
ARMDIVPREDIV
HCLKDIV
PCLKDIV
HALKHCLK
4'b0000
2'b01
2'b01
1'b1
1'b1
eg:PLL输出频率为800MHz时,

时钟
ARMCLK
HCLK
PCLK
DDRCLK
SSMCCLK
频率
400MHz
133MHz
66MHz
266MHz
66MHz
配置寄存器
ARMDIVPREDIV
HCLKDIV
PCLKDIV
HALKHCLK
4'b0001
2'b10
2'b01
1'b1
1'b1
MPLL输出频率计算公式 (配置MPLLCON寄存器)



初始化时钟clock_init()
1.设置分频 CLKDIV0
2.设置locktime LOCKCON0
3.设置MPLL MPLLCON
4.设置时钟源 CLKSRC
公式:

ARMCLK = MPLLout/ARMCLK Ratio = MPLLout/(ARMDIV+1) = 800/2 = 400MHz
HCLK = MPLLout/HCLK Ratio = MPLLout/( (PREDIV+1) * (HCLKDIV + 1) ) = 800/(3*2) = 133MHz
PCLK = HCLK/PCLKDIV = 133/2 = 66MHz

(串口的时钟为PCLK)

参考程序:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: