Skip to main content
charles2399
Associate III
January 27, 2009
Question

Maximum Watchdog Time-Out

Posted on January 27, 2009 at 18:09

Maximum Watchdog Time-Out

    This topic has been closed for replies.

    3 replies

    charles2399
    Associate III
    May 17, 2011
    Posted on May 17, 2011 at 13:00

    Reading RM0008 it seems that the maximum time-out for the watchdog timer is 58 ms. Is that correct? Can it be expanded to 1 or 2 seconds?

    This is a very small value, most other products give a much broader range of values. We have library functions that take more than 58 ms, and with this short time-out value we will have sprinkle watchdog hits into the library functions. Servicing the watchdog in an intterupt seems to defeat the function.

    charles2399
    Associate III
    May 17, 2011
    Posted on May 17, 2011 at 13:00

    Thanks, I had overlooked the IWDG and focusing on the WWDB.

    trevor1
    Associate III
    May 17, 2011
    Posted on May 17, 2011 at 13:00

    The max is 26 seconds not 58mS. I use this:

    Code:

    static void start_watchdog(void)

    {

    RCC_LSICmd( ENABLE ); // enable low speed internal clock used by watchdog

    while (IWDG->SR & 0x3); // wait for previos update operations to complete

    IWDG->KR = 0x5555; // Enable independent watchdog register access

    IWDG->PR = 6; // prescaller set to divice by 256 (min 6.4ms, max 26214.4ms)

    IWDG->RLR = 0xFFF; // reload value (0xFFF max)

    IWDG->KR = 0xCCCC; // start the watchdog

    }

    void stroke_watchdog(void)

    {

    IWDG->KR = 0xAAAA;

    }

    Regards

    Trevor