Цитата(wmakc @ May 22 2011, 22:00)

в Атмеловском загрузчике поменял строчку AT91C_BASE_WDTC->WDTC_WDMR = AT91C_WDTC_WDDIS;
на AT91C_BASE_WDTC->WDTC_WDMR = AT91C_WDTC_WDV | AT91C_WDTC_WDD | AT91C_WDTC_WDRSTEN;
в самой программе периодически сбрасываю таймер:
AT91C_BASE_WDTC->WDTC_WDCR = AT91C_WDTC_KEY | AT91C_WDTC_WDRSTT;
Проверял, если не сбрасывать таймер, то он перезапускает контроллер. Все как и должно быть. Но в программе, которую я использую, он не всегда срабатывает. То есть существуют ситуации, когда контролер зависает, и перезапускается только через пару часов. Такое может быть или же watchdog срабатывает всегда и я что-то не так делаю?
а AT91C_WDTC_WDV и AT91C_WDTC_WDD правильно задаются? Я с WDT пока не замечал шаманств. Чему соответствуют указанные поля?