Замена строки WDTCSR |= 0x18; на WDTCSR |= 0x1F;
ни к чему не приводит. В регистр WDTCSR первый раз все равно записывается 0x18... Установка битов WDCE и WDE для изменения конфигурации сторожевого таймера... После в течение четырех тактов записывается новая конфигурация таймера, что делает следующая строка. По крайней мере так написано в мануале на мегу2560.
Причем в прошлом своем топике я не точно выразился. Процессор не зависает, а переходит в "спящий" режим. И при первом выключении/включение питания проц не выходит из "сна". Выходит в нормальный режим только при повторном выключении/включении...
И это не смотря на то, что "спящий" режим вообще запрещен сбросом бита SE регистра SMCR в 0.
|