zoukankan      html  css  js  c++  java
  • LPC17XX 数据手册摘要之系统时钟与功率控制

    系统时钟与功率控制

    一、系统时钟

      LPC17XX有三个独立的时钟振荡器,分别是主振荡器(MIAN_OSC)、内部RC振荡器(IRC_OSC)、实时时钟振荡器(RTC_OSC)。LPC17XX时钟框图如下:

    LPC17XX 时钟框图

    如上图所示,三个振荡器通过 system clock select 三选一 后经过(或不经过)MAIN PLL 最后经 CPU CLOCK DIVIDER 分频为CPU提供时钟;其中主振荡器(MAIN_OSC)还可通过USB PLL为USB提供时钟;内部RC振荡器(IRC_OSC)还可作为看门狗的时钟源。

    主振荡器(MIAN_OSC)的工作频率为1MHz~25MHz;内部RC振荡器(IRC_OSC)的额定频率为4MHz,但其精度会受电压和温度的影响存在1%的调整。

    当系统重新上电或因任何原因复位后,LPC17XX 会将内部RC振荡器(IRC_OSC)作为CPU的时钟源,之后可通过软件更改时钟源。

    二、功率控制

      LPC17XX 有四种降低功率损耗的运行模式:睡眠模式、深度睡眠模式、掉电模式和深度掉电模式。

    1.睡眠模式(sleep mode)

      在睡眠模式下:

        arm 内核时钟被停止,重新使能内核时钟可退出睡眠模式;

        cpu 停止执行指令,复位或者中断可恢复执行指令;

        外设继续运行,外设中断可使处理器回复执行指令;

        处理器内核自身、存储系统以及相关控制其、内部总线停止运行,进而降低动态功率消耗。

    2.深度睡眠模式(deep-sleep mode)

      在深度睡眠模式下:

        主振荡器掉电,所有内部时钟停止;

        处理器的状态和寄存器、外设寄存器、SRAM里面的值都被保存,管脚逻辑电平被设置为静态;

        内部RC振荡器失能,但并未被关闭,以便快速推出深度睡眠模式;

        实时时钟振荡器正常运行,其中断可作为唤醒源;

        唤醒后需重新配置PLL和分频器;

        只有复位和与时钟无关的中断可唤醒深度睡眠模式,。这些中断包括NMI、外部中断EINT0到EINT3、GPIO中断、以太网Wake-On-LAN中断、掉电检测、                                  RTC报警中断、看门狗定时器超时、USB输入引脚跳变或CAN输入引脚跳变

    3.掉电模式(power-down mode)

      在掉电模式下:

        与深度睡眠模式操作相同;

        唤醒后,在访问Flash存储器中的代码或数据前,必须等待Flash恢复;

     

        只有复位和与时钟无关的中断可唤醒深度睡眠模式,。这些中断包括NMI、外部中断EINT0到EINT3、GPIO中断、以太网Wake-On-LAN中断、掉电检测、                                  RTC报警中断、看门狗定时器超时、USB输入引脚跳变或CAN输入引脚跳变

    4.深度掉电模式(deep power-down mode)

      在深度掉电模式下:

        整个芯片电源被关闭;

        通过外部复位信号、RTC中断唤醒。

    ps:上述唤醒中断的前提是这些中断被使能。

  • 相关阅读:
    [错误处理]UnicodeDecodeError: 'ascii' codec can't decode byte 0xe5 in position 0: ordinal not in range(128)
    [已解决]使用 apt-get update 命令提示 ...中被配置了多次
    linux各种版本查看方法
    [Pandas技巧] 如何把pandas dataframe对象或series对象转换成list
    linux下终止相关操作
    [错误处理]Vim卡死,无法输入是怎么回事?是不是按了Ctrl+S
    批量修改文件名称方法
    pycharm配置 自动运行指定脚本
    pip安装超时,更换国内镜像源安装
    命令行特殊字符名字转义
  • 原文地址:https://www.cnblogs.com/Waming-zhen/p/4056858.html
Copyright © 2011-2022 走看看