SorroW | Дата: Четверг, 01.09.2011, 13:03 | Сообщение # 1 |
Рядовой
Группа: Пользователи
Сообщений: 2
Статус: Offline
| Здравствуйте, пишу прогу на Си под atmega48 из кодвизиона. Нужно запустить сторожевой таймер на самое большое время выдержки. Проблема в чем - при запуске из мэйна вочдог, как и положено перезагружает контроллер, а вот при выполнении какой либо функции отказывается... Нужно контролировать зацикливание в этой функции. Как быть?
|
|
| |
HiSER | Дата: Четверг, 01.09.2011, 23:01 | Сообщение # 2 |
Продвинутый автор!
Группа: Проверенные
Сообщений: 254
Статус: Offline
| Как он может отказываться перезагружать контроллер?
WTD Включаешь при старте МК или с помощью Fuse и периодически сбрасываешь командой wdr.
|
|
| |
SorroW | Дата: Пятница, 02.09.2011, 09:49 | Сообщение # 3 |
Рядовой
Группа: Пользователи
Сообщений: 2
Статус: Offline
| Пробывал включать и програмно и фьюзом... находясь в главном цикле перезагружает! Как только захожу в функцию (там бесконечный цикл, искусственно созданное непредвиденное обстоятельство) и вообщем то все... команды сброса вочдога нигде не посылаю.. Понимаю что бред какой то... но может есть какие поводные камни... ========== Обошел вочдог обычным таймером... но всеже надо разобраться
|
|
| |
HiSER | Дата: Пятница, 02.09.2011, 10:48 | Сообщение # 4 |
Продвинутый автор!
Группа: Проверенные
Сообщений: 254
Статус: Offline
| посмотри листинг ASM, возможно компилятор запихивает команду wdr.
|
|
| |