您的位置 首页 开关

S3C2440初始化时钟设置

S3C2440CPU默认的工作主频为12MHz或169344MHz,在我的2440的开发板上上使用的是12MHZ,这里使用最多的也是12M。使用PLL电路可以产生更

S3C2440 CPU默许的作业主频为12MHz或16.9344MHz,在我的2440的开发板上上运用的是12MHZ,这儿运用最多的也是12M。运用PLL电路能够发生更高的主频供CPU及外围器材运用。

S3C2440有两个PLL:MPLL和UPLL,UPLL专用与USB设备。MPLL用于CPU及其他外围器材。

经过MPLL会发生三个部分的时钟频率:FCLK、HCLK、PLCK。FCLK用于CPU核,HCLK用于AHB总线的设备(比方SDRAM),PCLK用于APB总线的设备(比方UART)。

设置S3c2440的时钟频率便是设置MPLL的几个寄存器:

1、LOCKTIME:设为0x00ffffff

MPLL发动后需求等候一段时间(Lock Time),使得其输出安稳。位[23:12]用于UPLL,位 [11:0] 用于MPLL。运用确省值0x00ffffff即可。

2、CLKDIVN:用来设置FCLK:HCLK:PCLK的比例关系,默许为1:1:1

这儿值设为0x05(HDIVN=2,PDIVN=1),即FCLK:HCLK:PCLK=1:4:

3、MPLLCON:设为(0x7f << 12)|(0x02 << 4)|(0x01),即0x7f0021

关于MPLLCON寄存器,[19:12]为MDIV,[9:4]为PDIV,[1:0]为SDIV。有如下计算公式:

MPLL(FCLK) = (2 * m * Fin)/(p * 2^s)

m=(MDIV+8), p=(PDIV+2), s=SDIVFin即默许输入的时钟频率12MHz。MPLLCON设为0x7f0021,能够计算出FCLK=400MHz,再由CLKDIVN的设置可知:HCLK=100MHz,PCLK=50MHz。

比如:


rMPLLCON=(0x5c<<12)|(1<<4)|1; //总频Fclk设置为400M
// MPLL(FCLK) = (2 * m * Fin)/(p * 2^s)
// m=(MDIV+8), p=(PDIV+2), s=SDIV
//MPLLCON寄存器,[19:12]为MDIV,[9:4]PDIV,[1:0]为SDIV


rCLKDIVN=0x05; //分频因子设置
//(HDIVN=2, PDIVN=1),即FCLK:HCLK:PCLK=1:4:8
//HCLK=100M ; PCLK=50M
cal_cpu_bus_clk(); //??????

声明:本文内容来自网络转载或用户投稿,文章版权归原作者和原出处所有。文中观点,不代表本站立场。若有侵权请联系本站删除(kf@86ic.com)https://www.86ic.net/dianyuan/kaiguan/259723.html

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

关注微信
微信扫一扫关注我们

微信扫一扫关注我们

返回顶部