Перейти к содержанию

Watchdog Timer - что это?


Рекомендуемые сообщения

Собственно, сабж. :) Читая многочисленные даташиты от микроконтроллеров не раз наталкивался на упоминание WatchDog, но ни разу - на объяснение того, что это такое и зачем нужно. Как я понимаю, это просто такой супервизор от подвисания микроконтроллера, да? Расскажите в общих чертах, как он работает, плиз.

Ссылка на комментарий
Поделиться на другие сайты

Реклама: ООО ТД Промэлектроника, ИНН: 6659197470, Тел: 8 (800) 1000-321

Сторожевой таймер.

Назначение - при переполнении производится сброс микроконтроллера.

Сброс таймера осуществляется командой CLRWDT

Если программа кудо-то улетела то эта команда не исполнится и по прошествии времени, при котором таймер будет переполнен, происходит сброс контроллера.

Ссылка на комментарий
Поделиться на другие сайты

20% скидка на весь каталог электронных компонентов в ТМ Электроникс!

Акция "Лето ближе - цены ниже", успей сделать выгодные покупки!

Плюс весь апрель действует скидка 10% по промокоду APREL24 + 15% кэшбэк и бесплатная доставка!

Перейти на страницу акции

Реклама: ООО ТМ ЭЛЕКТРОНИКС, ИНН: 7806548420, info@tmelectronics.ru, +7(812)4094849

Сторожевой таймер.

Назначение - при переполнении производится сброс микроконтроллера.

Сброс таймера осуществляется командой CLRWDT

Если программа кудо-то улетела то эта команда не исполнится и по прошествии времени, при котором таймер будет переполнен, происходит сброс контроллера.

Т.е. он стартует вместе с основным железом и просто отсчитывает такты микроконтроллера? А при наборе некоторой максимально допустимой суммы делает RESET? И прога должна периодически выдавать CLRWDT, чтобы подтверждать, что жива?

Если все это так, то возникает еще один вопрос: а насколько часто происходят какие-то железные заглюки (т.е. подвисания), из которых микроконтроллер выводится только этим вотчдогом? Т.е. это вообще нормально, чтобы микроконтроллеры периодически глючили, или нет?

Ссылка на комментарий
Поделиться на другие сайты

Выбираем схему BMS для корректной работы литий-железофосфатных (LiFePO4) аккумуляторов

 Обязательным условием долгой и стабильной работы Li-FePO4-аккумуляторов, в том числе и производства EVE Energy, является применение специализированных BMS-микросхем. Литий-железофосфатные АКБ отличаются такими характеристиками, как высокая многократность циклов заряда-разряда, безопасность, возможность быстрой зарядки, устойчивость к буферному режиму работы и приемлемая стоимость. Но для этих АКБ, также как и для других, очень важен контроль процесса заряда и разряда, а специализированных микросхем для этого вида аккумуляторов не так много. Инженеры КОМПЭЛ подготовили список имеющихся микросхем и возможных решений от разных производителей. Подробнее>>

Реклама: АО КОМПЭЛ, ИНН: 7713005406, ОГРН: 1027700032161

Ага, всё верно, его в процессе выполнения проги надо сбрасывать периодически , чтоб он не переполнялся. На счёт тактов микрокантроллера, по моему у него отдельный генератор, но работает синхронно с генератором контроллера.

А на счёт зависаний, то бывает, особенно от разрядов, в несколько киловольт, если нет защиты то статики махом зависает. Если статика исключена то конечно будет работать. Если например "рядом" молния треснет то есть вероятность что зависнет. Короче нужная штука, лучше с ним чем без него.

yourdevice.net

Ссылка на комментарий
Поделиться на другие сайты

У сторожевого таймера свой RC генератор, если времени хватать не будет то можно подключить предделитель.

В PIC контроллерах имеется один предделитель который можно подключить либо к сторождевому таймеру либо к TMR0. Предделитель програмно не устанавливается, а сбрасывается вместе со сторожевым таймером если они работают в паре.

Изменено пользователем Станислав
Ссылка на комментарий
Поделиться на другие сайты

Намного приятнее общаться с человеком, у которого на форуме русское имя - Станислав, а то на этом форуме одни абра-катабры, что русских имен не хватает? (я тоже не исключение).

Станислав, Вы всё прекрасно объяснили, всё понятно для тех, кто уже знает, что такое сторожевой таймер, а для тех, кто первый раз слышит о нём?

Не будете возражать, если я попытаюсь объяснить ещё вот так:

Сторожевой таймер предназначен для автоматического сброса микроконтроллера, если программа зависнет.

Если программа работает нормально, то программно, через определенные промежутки времени (промежутки времени меньшие, чем время, необходимое для переполнения сторожевого таймера), сбрасывается сторожевой таймер, и он (сторожевой таймер) никогда не переполнится. Если программа зависла, то программно, сторожевой таймер сбрасываться не будет, и, по прошествию определенного времени сторожевой таймер переполнится, что приведет к сбросу микроконтроллера. После сброса, микроконтроллер опять работает по программе.

Ссылка на комментарий
Поделиться на другие сайты

Позволю заметить, из своего опыта, "сторожевая болонка" сама бывает зависает. Это наблюдалось у 8051 и им подобных, у AVRов, и менее всего, но было, у PICов. Так что к ней надо подходить осторожно. И в промышленных устройствах, которые работают 24часа в сутки, применять и тем более полагаться на них - плохой "тон".

Ссылка на комментарий
Поделиться на другие сайты

Позволю заметить, из своего опыта, "сторожевая болонка" сама бывает зависает. Это наблюдалось у 8051 и им подобных, у AVRов, и менее всего, но было, у PICов. Так что к ней надо подходить осторожно. И в промышленных устройствах, которые работают 24часа в сутки, применять и тем более полагаться на них - плохой "тон".

Хмммм... А что тогда делать, если и сам ВотчДог виснет? Мне как раз нужно устройство, бесперебойно работающее неделями... На что можно положиться? Или придется делать как в военной технике: ставить два абсолютно одинаковых микроконтроллера и надеяться, что синхронно они не заглючат?..

----------------------------

P.S. Совершенно невтемачный вопрос, но не хочется создавать отдельную ветку, да и на подфоруме "Начинающим" не такие гуру сидят. :) В общем, вопрос такой: каким лаком можно покрывать готовые схемы, чтобы сделать их очень устойчивыми к сырости (чтобы чуть ли не под водой работать могли), но при этом не сильно попортить теплоотвод от деталей?

Ссылка на комментарий
Поделиться на другие сайты

Хмммм... А что тогда делать, если и сам ВотчДог виснет? ...

Помогает внешний WD. Самый простой и самый надежный: резистор + конденсатор + компаратор (можно на логике, Шмидте или на транзисторах). Для сброса его приходиться жертвовать ногой контроллера. Но! Важно! Сбрасывать его нивкоем случае не в прерывании, а только из основной программы.

... Мне как раз нужно устройство, бесперебойно работающее неделями. На что можно положиться? ...

Всё в мире относительно. (кто то так сказал :P ). Важно, в каких условиях будет работать изделие. Если в домашних, то внутренний WD и нет проблем. В автомобиле посложнее 50 на 50, смотря за что отвечает и где разместить. А если метро, сотовая вышка, самолет, охрана банка и т.п. то извольте, по полной программе.

Так же, полезно каждые 5-30 минут производить полный Reset.

Можно еще программно следить за стеком, за регистрами (обновляя их постоянно) и за важными участками RAM, вычисляя контрольные суммы.

В случае сбоя - Reset. Вообще, способов уйма.

Или придется делать как в военной технике: ставить два абсолютно одинаковых микроконтроллера и надеяться, что синхронно они не заглючат?..

Военные строят технику опираясь на безотказность. Дублируя, повышаяя коэффициент его. Хотя, можно и для бытовухи так делать. :D:D:D

----------------------------

P.S. Совершенно невтемачный вопрос, но не хочется создавать отдельную ветку, да и на подфоруме "Начинающим" не такие гуру сидят.  :)  В общем, вопрос такой: каким лаком можно покрывать готовые схемы, чтобы сделать их очень устойчивыми к сырости (чтобы чуть ли не под водой работать могли), но при этом не сильно попортить теплоотвод от деталей?

Лаком - любым. Под водой работать - как зальешь. А теплоотводы, обычно не покрывают. На герметизацию корпуса расчитывают.

Вообщем, Удачи! :D

Ссылка на комментарий
Поделиться на другие сайты

вот еще одна идея реализации сторожевого таймера (довольно старая):

На производстве в качестве нагрузки используются различные устройства питающиеся от сети переменного напряжения 220 вольт, естественно они включаются через промежуточное реле которых в системе много и есть свободные.

Берем два вывода контроллера с релюхами на выходе и поочереди включаем то один то другой , реле вследствии своей инерционности будут включены обе, если контроллер зависнет то одна из релюх обязательно отключится, ну а дальше дело техники.

Ссылка на комментарий
Поделиться на другие сайты

... Мне как раз нужно устройство, бесперебойно работающее неделями. На что можно положиться? ...

Всё в мире относительно. (кто то так сказал :P ). Важно, в каких условиях будет работать изделие. Если в домашних, то внутренний WD и нет проблем. В автомобиле посложнее 50 на 50, смотря за что отвечает и где разместить. А если метро, сотовая вышка, самолет, охрана банка и т.п. то извольте, по полной программе.

Требуется, чтобы в полевых условиях работало: схемка и батарейка сидят в пластиковой/железной/etc коробочке, а коробочка лежит в чистом поле и ее шмонают дождь, землетрясения, залетные цунами и птичий грипп. :) (Собственно, к той же теме был и вопрос про лак.) Соотвтетственно, встает вопрос, а что именно влияет на степень глючности работы микроконтроллеров? Температура (они, кстати, греются или как?), влажность, вибрация, электромагнитные наводки?

----------------------------

P.S. Совершенно невтемачный вопрос, но не хочется создавать отдельную ветку, да и на подфоруме "Начинающим" не такие гуру сидят.  :)  В общем, вопрос такой: каким лаком можно покрывать готовые схемы, чтобы сделать их очень устойчивыми к сырости (чтобы чуть ли не под водой работать могли), но при этом не сильно попортить теплоотвод от деталей?

Лаком - любым. Под водой работать - как зальешь. А теплоотводы, обычно не покрывают. На герметизацию корпуса расчитывают.

Хммм... А если вся схема состоит из одного микроконтроллера, пары слабых транзюков, батарейки и десятка пассивных деталей, то разве ее нужно специально охлаждать? Я думал, что все в собранном виде можно просто макнуть в лак или даже залить чем-то типа эпоксидной смолы или парафина...

Ссылка на комментарий
Поделиться на другие сайты

2 Varravann.

Все контроллеры, процессоры, сложная логика (счетчики, триггеры, регистры) и т.п. - очень чуствительны к электромагнитным импульсам (ЭМИ). Типа статика, разряд и т.п. Оттуда растёт термин - электромагнитная совместимость (ЭМС). А из него произростает понятие - «степень жесткости», характеризующее устойчивость прибора к помехам. Степеней четыре. Крутая четвёртая. Что такое первая я не представляю. Серьёзный прибор должен держать 3-ю, а в идеале 4-ю ст. Проверит устройство на ЭМС 2-ой ст. можно и в домашних условиях ручной пьезозажигалкой для газа. Для лучшего эффекта: к концам зажигалки приделываются 2 провода (жестких многожильных) в изоляции длиной 20-25 см, из них образуют круг, а концы проводов закрепляют на расстоянии 3-5мм на кусочке диэлектрика. Искря таким устройством около! работающего контроллера масса впечатлений от глюков гарантирована. Вот с ним то и можно отлаживать WatchDog. :)

По воводу лака и эпоксидки с парафином: Залить ими можно всё. Если контроллер впаян мертво, то он окунается смело. Не желательно заливать: радиаторы, колодки, разьёмы, контакты.

З.Ы. А от птичьего гриппа, лучше использовать герметичную коробку с антибиотиками внутрях. :) :) :)

Изменено пользователем plexor!
Ссылка на комментарий
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы публикуете как гость. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.
Примечание: Ваш пост будет проверен модератором, прежде чем станет видимым.

Гость
Unfortunately, your content contains terms that we do not allow. Please edit your content to remove the highlighted words below.
Ответить в этой теме...

×   Вставлено с форматированием.   Восстановить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

Загрузка...
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...