CH32V203的2.0版本的IWDG例程初始化卡死
void IWDG_Enable(void)
{
? ? IWDG->CTLR = CTLR_KEY_Enable;
? ? while((RCC->RSTSCKR)|(0x2)!=SET);
}
在線仿真時發(fā)現(xiàn)卡死在while((RCC->RSTSCKR)|(0x2)!=SET);,希望官方盡快排查。
CH32V203的2.0版本的IWDG例程初始化卡死
void IWDG_Enable(void)
{
? ? IWDG->CTLR = CTLR_KEY_Enable;
? ? while((RCC->RSTSCKR)|(0x2)!=SET);
}
在線仿真時發(fā)現(xiàn)卡死在while((RCC->RSTSCKR)|(0x2)!=SET);,希望官方盡快排查。
查看這個位的寄存器就是判斷內(nèi)部低速40KHz時鐘穩(wěn)定了沒有,例程并沒有打開內(nèi)部低速40KHz時鐘,但是打開了內(nèi)部低速40KHz時鐘依然還是卡死在這個位置。
SystemCoreClockUpdate();
RCC_LSICmd(ENABLE);
USART_Printf_Init(115200);
printf("SystemClk:%d\r\n",SystemCoreClock);
printf( "ChipID:%08x\r\n", DBGMCU_GetCHIPID() );
Delay_Init();
KEY_Init();
printf("IWDG test...\r\n");
Delay_Ms(1000);
IWDG_Feed_Init( IWDG_Prescaler_32, 4000 );? ?// 3.2s IWDG reset
您好,將下圖位置 或 改成 與 即可,下版本例程會進行更新
確實,那么?RCC_LSICmd(ENABLE); 還需要手動打開嗎?
既然說下個版本例程會修復(fù),能不能每次更新例程的時候,出個更新記錄之類的,修復(fù)哪些問題