美文网首页
第十六章 主频和时钟配置实验(PLL1)

第十六章 主频和时钟配置实验(PLL1)

作者: 昨天剩下的一杯冷茶 | 来源:发表于2019-12-13 11:21 被阅读0次

    这章讲了太多系统时钟的寄存器。主要操作时钟的寄存器。

    一、系统时钟来源
    32.768KHz晶振时I.MX6U的RTC时钟,24MHz是I.MX6U内核和其他外设的时钟源。

    二、 7路PLL时钟源
    2.1、PLL1(ARM_PLL)是供RAM内核使用,此PLL通过编程的方式最高可倍频到1.3GHz

    2.2、 PLL2(528_PLL)是System_PLL,此路PLL分出了4路PFD,分别为:PLL2_PFD0~PLL2_PFD3。

    2.3、 PLL3(USB1_PLL)是用于USBPHY,此PLL有4路PFD,分别是PLL3_PDF0~PLL3_PDF3。

    2.4、 PLL4(AUDIO_PLL)用于音频相关的外设。

    2.5、 PLL5(VIDE0_PLL),此路PLL用于显示相关的外设。

    2.6、 PLL6(ENET_PLL),此路用于生成网络所需要的时钟。

    2.7、 PLL7(USB2_PLL)是用于USB2PHY。

    三、时钟树简介
    CLOCK_SWITCHER是时钟源;
    CLOCK ROOT GENERATOR是类似“月老”
    SYSTEM CLOCKS是提供芯片外设的时钟

    四、内核时钟设置

    4.1、 PLL1
    CCM_CACRR 寄存器

    image.png

    CCM_CACRR的ARM_PODF位是设置分频

    CCM_ANALOG_PLL_ARMn

    image.png

    bit13是控制PLL1是否输出
    bit0~6是PLL1倍频,OKK1 CLK =Fin*div_seclec/2.0,Fin=24MHz。如果PLL1要输出1056MHz的话,div_select就要设置为88。

    ** 器 CCM_CCSR**


    image.png

    bit8是设置时钟源来之哪里
    bit2是设置输出时钟来之step_clk(24MHz)还是pll1_main_clk

    修改步骤
    ①设置寄存器 CCSR 的 STEP_SEL 位,设置 step_clk 的时钟源为 24M 的晶振。

    ②设置寄存器 CCSR 的 PLL1_SW_CLK_SEL 位,设置 pll1_sw_clk 的时钟源为
    step_clk=24MHz,通过这一步我们就将 I.MX6U 的主频先设置为 24MHz,直接来自于外部的
    24M 晶振。

    ③设置寄存器 CCM_ANALOG_PLL_ARMn,将 pll1_main_clk(PLL1)设置为 1056MHz。

    ④设置寄存器 CCSR 的 PLL1_SW_CLK_SEL 位,重新将 pll1_sw_clk 的时钟源切换回
    pll1_main_clk,切换回来以后的 pll1_sw_clk 就等于 1056MHz。

    ⑤最后设置寄存器 CCM_CACRR 的 ARM_PODF 为 2 分频,I.MX6U 的内核主频就为
    1056/2=528MHz。

    相关文章

      网友评论

          本文标题:第十六章 主频和时钟配置实验(PLL1)

          本文链接:https://www.haomeiwen.com/subject/fkzcwctx.html