Сохранить жизнь для Arduino
Иногда arduino по какой-то причине блокируется. Было бы неплохо узнать почему, но проблема более общая. Я нашел аппаратное обеспечение keep alive, которое сбрасывает контроллер, если он не отвечает:
Arduino Keep Alive with AT-Tiny
Это сработало бы, но мне интересно, есть ли такие функции, встроенные в любой из процессоров, которые можно использовать в среде Arduino (ESP8266, ESP32 или тому подобное).
Может быть, люди знают о процессоре с функцией "Сохранить жизнь"?
Как бы я определил, присутствует ли эта функция "keep alive" для конкретного процессора?
Спасибо за любые предложения!
Марк
@xsk8rat, 👍0
Обсуждение2 ответа
Лучший ответ:
Ссылка: https://create.arduino.cc/projecthub/rafitc/what-is-watchdog-timer-fffe20
- Сторожевые таймеры можно найти в техническом описании. Если программное обеспечение не вмешается в этот модуль, то микроконтроллер будет сброшен. по сути, перезапуск всех функций.
- Это плохая идея-использовать WDT для решения вашей конкретной темы. Вы должны попытаться исправить эту проблему
- Внешние сторожевые таймеры (пример: ADM8320) надежнее внутренних
Спасибо за ссылку, это полезно! Да, мне нужно узнать больше о том, что заставляет блоки висеть и исправлять это. Это будет первое, что я сделаю!, @xsk8rat
лично я никогда не сталкивался с тем, чтобы мой Arduino выходил из строя. У меня даже есть плата, работающая для одного из моих университетских проектов, измеряющая температуру, время и сопротивление датчика, и сохраняющая данные на карту Micro SD, которая работает уже более 3 месяцев от батарей без проблем!
Что вы имеете в виду под "замками"? Если вы запускаете программу мигания, она останавливается или работает нормально?
В приведенной вами ссылке идея сброса устройств в сложном проекте интернета Вещей является разумной идеей, но вы рискуете повторить свою проблему снова и снова, если не знаете, в чем ее причина
Привет, Люк, это проблема, мне нужно найти ее. Датчики используются в производстве, и они сообщили о проблеме. Но я еще не получил данные или блок., @xsk8rat
- Сброс Arduino Uno в коде
- Как сбросить или отформатировать Arduino?
- Сторожевой таймер застрял в цикле перезапуска? (мигает зеленый светодиод)
- ESP8266 — Отправка команды сброса программного обеспечения
- Arduino Pro Микро кирпичился?
- Как переназначить кнопку сброса Arduino
- Сброс последовательного порта Arduino в последовательном мониторе и Python
- AsyncWebServer дает сброс wdt
Да, он называется "Сторожевой пес", и у большинства микроконтроллеров (включая ATmega328P на Uno) он есть., @Majenko
вы можете прикрепить этот атинни к любой плате, но зачем, если встроенный сторожевой пес делает то же самое?, @Juraj
"Сторожевой пес" Понял! Спасибо за предложения! Я спотыкался на правильном жаргоне., @xsk8rat
@xsk8rat Это часто проблема: вы знаете, что вы хотите, но вы не знаете, как это называется, и гуглить без волшебного слова почти невозможно., @Majenko
В микроконтроллере Arduino есть WDT, но вы действительно должны сначала решить свою первопричину. Arduino не должен запираться, и когда это происходит, то обычно это либо программная проблема, когда стек переполняется, либо аппаратная проблема, когда у вас есть шум или другие паразитные сигналы, мешающие работе микроконтроллера., @jwh20
Признал это лучшим решением вопроса. Твоя точка зрения не утеряна одним мной! Это уродливый пластырь для вещей, которые я не могу определить заранее., @xsk8rat
согласны ли мы с тем, что связанный учебник, использующий внешний MCU как "keep alive", является бессмыслицей?, @Juraj
Да, именно это мы и делаем!, @xsk8rat