KE02看门狗复位问题

2020-02-19 20:58发布

现在我要给我的程序加一个看门狗功能,但是在测试看门狗的过程中,看门狗不能正常复位。
测试时,软件用的就是官方的看门狗例程;硬件用的是FRDM-KE02Z开发板。
有没有哪位朋友遇到过相关问题,花点时间帮兄弟看一下,谢谢了
友情提示: 此问题已得到解决,问题已经关闭,关闭后问题禁止继续编辑,回答。
14条回答
土豆-Nanne
2020-02-20 01:56
鲜衣怒马 发表于 2015-4-1 16:54
路过帮顶,楼主最好把代码贴出来,大神们才能帮忙

以下是主函数的代码,代码基本是官方的看门狗例程,仅是屏蔽了看门狗的喂狗指令。上电后,蓝 {MOD}的LED开始闪烁,可见程序并未复位。

int main (void)
{
    WDOG_ConfigType sWDOGConfig = {0};    /*! < watchdog configuration structure */

    /* Perform processor initialization */
    sysinit();

    sWDOGConfig.sBits.bWaitEnable   = TRUE;
    sWDOGConfig.sBits.bStopEnable   = TRUE;
    sWDOGConfig.sBits.bDbgEnable    = TRUE;
    sWDOGConfig.sBits.bUpdateEnable = FALSE;
    sWDOGConfig.sBits.bDisable      = FALSE;        /* enable WDOG */
    sWDOGConfig.sBits.bClkSrc       = WDOG_CLK_INTERNAL_1KHZ;
    sWDOGConfig.u16TimeOut          = 1000;  /*< 1s */
    sWDOGConfig.u16WinTime          = 0;  

    WDOG_Init(&sWDOGConfig);

    printf(" Running the wdog_feed_demo project. ");

    if(WDOG_IsReset())                      /*!< check if wathdog reset happens */
    {
        /*! watchdog happens. */
        LED0_Init();                        /*!< initialize red light */
        while(1)
        {
            LED0_Toggle();                  /*!< flash red light if watchdog reset occurs */
            WDOG_Feed();            
            DelayUS(50000);                 /*!< delay around 50ms */
        }
    }
    /*! watchdog does not happens, then flash blue led. */
    LED2_Init();                            /*!< initialize blue light */
    while(1)
    {
        LED2_Toggle();                      /*!< flash blue light if no watchdog reset occurs */
        //WDOG_Feed();
        DelayUS(50000);                     /*!< delay around 50ms */
    }

}

一周热门 更多>