低速.txt

来自「44b0,电源管理低速模式」· 文本 代码 · 共 29 行

TXT
29
字号
void normal_slow()//正常和SLOW模式转换
{
    unsigned int i;
    unsigned int MemCon[9]={0,0,0,0,0,0,0x18000,0x18000,0x800000+2033};
    unsigned int save_MCON[9];
    pISR_EINT4567=(unsigned int)STEINT45;
    rINTMSK = ~(BIT_GLOBAL | BIT_EINT4567);
    for(i=0;i<9;i++)
    save_MCON[i]=((unsigned int *)0x01c80004)[i];
    rLOCKTIME=0x640;
    rCLKSLOW=2|(1<<4)|(1<<5); //PLL关闭进入SLOW
    ChangeMemCon(MemCon);//改变存储器控制寄存器60M->1M
    while(!slw_exit)//等待唤醒信号
    {
    Delay(100);
    Delay(100);
    }
    rINTMSK|=BIT_RTC;
    for(i=0;i<9;i++)
    {
    MemCon[i]=save_MCON[i];
    }
    ChangeMemCon(MemCon);
    rCLKSLOW=2|(1<<4)|(0<<5);//PLL被打开
    for(i=0;i<2048;i++)//打开PLL需要时间
    rCLKSLOW=2; //退出SLOW禁止SLOW位
    slw_exit=0;
    aflag=2;
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?