Сохранить жизнь для Arduino

Иногда arduino по какой-то причине блокируется. Было бы неплохо узнать почему, но проблема более общая. Я нашел аппаратное обеспечение keep alive, которое сбрасывает контроллер, если он не отвечает:

Arduino Keep Alive with AT-Tiny

Это сработало бы, но мне интересно, есть ли такие функции, встроенные в любой из процессоров, которые можно использовать в среде Arduino (ESP8266, ESP32 или тому подобное).

Может быть, люди знают о процессоре с функцией "Сохранить жизнь"?

Как бы я определил, присутствует ли эта функция "keep alive" для конкретного процессора?

Спасибо за любые предложения!

Марк

, 👍0

Обсуждение

Да, он называется "Сторожевой пес", и у большинства микроконтроллеров (включая ATmega328P на Uno) он есть., @Majenko

вы можете прикрепить этот атинни к любой плате, но зачем, если встроенный сторожевой пес делает то же самое?, @Juraj

"Сторожевой пес" Понял! Спасибо за предложения! Я спотыкался на правильном жаргоне., @xsk8rat

@xsk8rat Это часто проблема: вы знаете, что вы хотите, но вы не знаете, как это называется, и гуглить без волшебного слова почти невозможно., @Majenko

В микроконтроллере Arduino есть WDT, но вы действительно должны сначала решить свою первопричину. Arduino не должен запираться, и когда это происходит, то обычно это либо программная проблема, когда стек переполняется, либо аппаратная проблема, когда у вас есть шум или другие паразитные сигналы, мешающие работе микроконтроллера., @jwh20

Признал это лучшим решением вопроса. Твоя точка зрения не утеряна одним мной! Это уродливый пластырь для вещей, которые я не могу определить заранее., @xsk8rat

согласны ли мы с тем, что связанный учебник, использующий внешний MCU как "keep alive", является бессмыслицей?, @Juraj

Да, именно это мы и делаем!, @xsk8rat


2 ответа


Лучший ответ:

1

Ссылка: https://create.arduino.cc/projecthub/rafitc/what-is-watchdog-timer-fffe20

  • Сторожевые таймеры можно найти в техническом описании. Если программное обеспечение не вмешается в этот модуль, то микроконтроллер будет сброшен. по сути, перезапуск всех функций.
  • Это плохая идея-использовать WDT для решения вашей конкретной темы. Вы должны попытаться исправить эту проблему
  • Внешние сторожевые таймеры (пример: ADM8320) надежнее внутренних
,

Спасибо за ссылку, это полезно! Да, мне нужно узнать больше о том, что заставляет блоки висеть и исправлять это. Это будет первое, что я сделаю!, @xsk8rat


0

лично я никогда не сталкивался с тем, чтобы мой Arduino выходил из строя. У меня даже есть плата, работающая для одного из моих университетских проектов, измеряющая температуру, время и сопротивление датчика, и сохраняющая данные на карту Micro SD, которая работает уже более 3 месяцев от батарей без проблем!

Что вы имеете в виду под "замками"? Если вы запускаете программу мигания, она останавливается или работает нормально?

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

,

Привет, Люк, это проблема, мне нужно найти ее. Датчики используются в производстве, и они сообщили о проблеме. Но я еще не получил данные или блок., @xsk8rat