您的位置 首页 发布

S3C44B0的体系时钟设置公式

Fpllo为系统的主频,此处为60MHzFin为晶振的频率,此处为10MHz一.通过PLL输出时钟脉冲频率的计算:a)Fpllo=(mtimes;Fin…

Fpllo 为体系的主频,此处为60MHz

Fin 为晶振的频率,此处为10MHz
一. 经过PLL输出时钟脉冲频率的核算:
a) Fpllo = (m × Fin)/ (p × 2^s)
b) m = (MDIV + 8) , p = (PDIV + 2), s = SDIV
c) 20MHz < Fpllo < 66MHz
d) Fpllo * 2^s < 170MHz (s应该尽可能的大)
e) 1MHz <= Fin/p < 2MHz (最好是Fin/p = 1MHz)
f) 假如PLL翻开则:Fpllo = Fout
g) 这样核算出MDIV, PDIV, SDIV的值写入PLLCON寄存器中就可设置Fpllo的输出频率。
依据 d)知道s=1
依据 e)知道p=10
再依据 a)就知道了m=120,留意2^s代表2的s次方
再依据 b)知道MDIV=112, PDIV=8, SDIV=1
依据44B0数据手册5-14页算出 PLLCON=0X70081
留意:PLLCON的成果不为一!比方P能够取8 取7……
留意:PLLCON寄存器是20位的 各个区域中心有空的
比方MDIV是寄存器里19-12位,PDIV是9-4位两个中心有11,10位空,假如用2进制算就添0

不过做过硬件的就知道 大可不必只要把MDIV, PDIV, SDIV用WINDOWS自带核算机直接由2进制转换成16进制次序写就行

比方MDIV=112=0x70, PDIV=8=0x08, SDIV=1=0x1
void ChangePllValue(int mdiv,int pdiv,int sdiv)
{
rPLLCON=(mdiv<<12)|(pdiv<<4)|sdiv;
}

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

为您推荐

联系我们

联系我们

在线咨询: QQ交谈

邮箱: kf@86ic.com

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

微信扫一扫关注我们

返回顶部