Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
Watchdog Timer. Не понятен принцип работы. (+)
Отправлено
Метценгерштейн
(213.33.244.142)
20 мая 2010, г. 13:01
настраиваю регистр WDTCR на время ожидания сброса битами WDP2, WDP1, WDP0
записываю по единице в WDTOE и в WDE, дальше что происходит с ним?
если система нормально работает, то бит WDE очищается? или как?
Составить ответ
|
Вернуться на конференцию
Ответы
Там обычный счетчик увеличивается. Если переполнится, то сбросит (RESET) микроконтроллер. Чтобы не переполнялся его надо обнулять командой wdr где-нибудь в основном цикле.
-
БУБУ
(20.05.2010, 14:19:3
195.131.149.120
,
пустое
)
Назовите МК и скажите что хотите сделать.
-
Quasy
(20.05.2010, 13:36:49
192.168.0.207,80.243.9.34
,
пустое
)
Мега 8, учебный пример. Хочу понять работу собаки
-
Метценгерштейн
(20.05.2010, 13:40:0
213.33.244.142
,
пустое
)
Бит WDE показывает: WD-таймер работает или нет. Он стоит всегда пока WD-таймер работает. Бит WD...{+}(+)
-
Quasy
(20.05.2010, 14:14:0
192.168.0.207,80.243.9.34
, 1031 байт)
а инициализация этого WDTCR там же где и порты инициализирую? Один раз?
-
Метценгерштейн
(20.05.2010, 14:19:58
213.33.244.142
, 257 байт)
Функция зачем? :)) Ну понадобился WDT - включили его, когда необходимость отпала - выключили (т...{+}(+)
-
Quasy
(20.05.2010, 14:28:36
192.168.0.207,80.243.9.34
, 653 байт)
хорошо (+)
-
Метценгерштейн
(20.05.2010, 14:38:7
213.33.244.142
, 905 байт)
1. Если Вам зачем-то понадобилось "сброситься" по вачдогу - тогда не надо (+)
-
Quasy
(20.05.2010, 14:48:19
192.168.0.207,80.243.9.34
, 329 байт)
спасибо всем.
-
Метценгерштейн
(20.05.2010, 14:51:13
213.33.244.142
,
пустое
)
Ну а если фуз WDTON прожгли нечаянно, то WDT сразу после подачи питания сам автоматом включится...{+}
-
Quasy
(20.05.2010, 14:32:22
192.168.0.207,80.243.9.34
, 215 байт)
т.е. фузы можно и не трогать эти? просто програмно все делать?
-
Метценгерштейн
(20.05.2010, 14:39:1
213.33.244.142
,
пустое
)
Программно можно включать-выключать вачдог пока WDTON не прожжен.(+)
-
Quasy
(20.05.2010, 14:50:16
192.168.0.207,80.243.9.34
, 100 байт)
Командой wdr сбрасываешь счётчик. Если выходит таймер - проц сбрасывается. При этом в MTUCSR би...{+}
-
Michael_75
(20.05.2010, 13:26:37
80.249.236.234
, 195 байт)
Нет, в программе где-то надо ставить обнуление счётчика.
-
Prokop1977
(20.05.2010, 13:23:46
62.84.104.1
,
пустое
)
т.е. что происходит? сторожевой таймер просто считает и сбрасывается, когда досчитает. (+)
-
Метценгерштейн
(20.05.2010, 13:27:34
213.33.244.142
, 55 байт)
Он может быть не только для сброса, по нему можно только прерывание запускать(+)
-
Prokop1977
(20.05.2010, 13:34:52
62.84.104.1
, 94 байт)
Если до этого места обнуления не доходит, то будет периодический сброс или прерывание по переполнению WDT.
-
Prokop1977
(20.05.2010, 13:27:20
62.84.104.1
,
пустое
)
и в этом случае, какие биты будут сбрасываться каждый раз и ставиться заново? Чтобы активировать WDT, надо установить WDTOE и WDE в 1. так?
-
Метценгерштейн
(20.05.2010, 13:31:37
213.33.244.142
,
пустое
)
Надеюсь вы про AVR спрашиваете?
-
Prokop1977
(20.05.2010, 13:39:53
62.84.104.1
,
пустое
)
да, про мегу 8
-
Метценгерштейн
(20.05.2010, 13:40:55
213.33.244.142
,
пустое
)
прошу прощения - для Mega8 - только сброс, но всё-равно принцип тот же.
-
Prokop1977
(20.05.2010, 13:48:42
62.84.104.1
,
пустое
)
Вот пример рабочего кода для GCC
-
Prokop1977
(20.05.2010, 13:36:47
62.84.104.1
, 788 байт)
Уточняю - установить дважды подряд!
-
Michael_75
(20.05.2010, 13:32:56
80.249.236.234
,
пустое
)
так будет правильно его использование? (+)
-
Метценгерштейн
(20.05.2010, 13:52:54
213.33.244.142
, 301 байт)
в начале тоже WDR(). Потом флаг сброса WDRF обнулить. И вместо WDTCSR= (1 << WDP2) | (1 << WDP1) | (1 << WDP0); - WDTCSR= 0x0F;
-
Prokop1977
(20.05.2010, 14:07:44
62.84.104.1
, 70 байт)
Да. Но если прерывания разрешены - то сначала запрети их. Иначе после первой записи проц может ...{+}(+)
-
Michael_75
(20.05.2010, 14:02:48
80.249.236.234
, 356 байт)
одного не понял, в даташите, там ф-я void WDT_off(void) { и в ней эти регистры инициализируются. (+)
-
Метценгерштейн
(20.05.2010, 14:06:25
213.33.244.142
, 235 байт)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
введите число 234:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru