CH573修改主频

一、切换主频为32K

切换主频为32K,需要先跑60M的主频,等待主频稳定后(2s左右),然后再调用切换主频。在进行调用时需要将代码放在RAM里面跑,速度更快。需注意,切换主频后的时候出现了变化,如原先500ms的延时函数会变为1000000ms。

__HIGH_CODE
void test1(void){
    R8_SAFE_ACCESS_SIG = SAFE_ACCESS_SIG1;
    R8_SAFE_ACCESS_SIG = SAFE_ACCESS_SIG2;
    SAFEOPERATE;
    R8_CK32K_CONFIG |= RB_CLK_OSC32K_XT | RB_CLK_INT32K_PON | RB_CLK_XT32K_PON;
    R16_CLK_SYS_CFG |= RB_CLK_SYS_MOD;
    R8_SAFE_ACCESS_SIG = 0;
}

__HIGH_CODE
void test2(void){
    while(1){
        GPIOB_ResetBits(GPIO_Pin_4);                     //高低电平翻转
        mDelaymS(1);
        GPIOB_SetBits(GPIO_Pin_4);
        mDelaymS(1);
    }
}

__HIGH_CODE
int main()
{
    uint8_t      i;
    SetSysClock(CLK_SOURCE_PLL_60MHz);
    GPIOB_ModeCfg(GPIO_Pin_4,  GPIO_ModeOut_PP_5mA);   //设置模式 输出
    mDelaymS(3000);

    test1();
    test2();
  while(1);
}

如上设置后主频切换成功,可以将PB4接灯后验证程序是否执行成功。

 

CH582参考:https://www.wch.cn/bbs/thread-99797-1.html

 

posted @ 2022-09-01 17:07  SweetTea_lllpc  阅读(307)  评论(0编辑  收藏  举报