本帖最后由 chzfmx 于 2020-3-10 11:46 编辑
项目中用到看门狗,在测试的时候碰到问题:
首先配置为超时产生中断,在中断中清中断标志,周期进入中断,测试正常;
然后修改配置为超时产生复位,不成功,代码如下,没有进行喂狗操作,不知道啥问题:
int32_t main(void)
{
uart0_init(9600);
uart_send_string("mcu_start!\r\n");
/* 屏蔽部分是wdt例程中的代码,超时也不能产生复位
stc_wdt_config_t stcWdt_Config;
stc_lpm_config_t stcLpmCfg;
DDL_ZERO_STRUCT(stcWdt_Config);
DDL_ZERO_STRUCT(stcLpmCfg);
stcLpmCfg.enSLEEPDEEP = SlpDpDisable;//SlpDpEnable;
stcLpmCfg.enSLEEPONEXIT = SlpExtEnable;
stcWdt_Config.u8LoadValue = 0x0b;//3.2s
stcWdt_Config.enResetEnable = WRESET_EN; //WINT_EN;//
stcWdt_Config.pfnWdtIrqCb = WdtCallback;
Clk_SetPeripheralGate(ClkPeripheralWdt,TRUE);//
Wdt_Init(&stcWdt_Config);
Wdt_Start();
*/
//Clk_SetPeripheralGate(ClkPeripheralWdt,TRUE);//
M0P_CLOCK->PERI_CLKEN |= 1<<15;
|