Выход из зависшей ветки через сброс по WDT приведёт к перезапуску CPU, что для ответственного приложения недопустимо. Один из вариантов решения проблемы: - в конфигурации WDT запрещаем сброс CPU и разрешаем прерывание от WDT - в main, в главном цикле, как обычно, периодически обнуляем WDT Но как из прерывания __irq void Watchdog_Handler(void) вернуться не в зависшую ветку, а в главный цикл? C благодарностью приму советы от уважаемых коллег
|