WatchDog

Orest
Offline
Зарегистрирован: 02.11.2017

Доброе время суток. Беспокоит меня вопрос, прошу подсказать решение. В свой проект хочу добавить watchdog. На одной и той же плате Arduino хочет работает, а хочет нет. То есть когда проект фактически пуст (10 строк кода) – то отлично работает, когда большой (более 900 строк кода) вообще не реагирует на переполнение по времени. Пытался экспериментировать с настройками компилятора (уровни оптимизации) Arduino IDE, так в момент переполнения по времени просто повисает или ведет себя не адекватно. Пробовал разные библиотеки watchdog, эффект почти тот же. Что не так?

rkit
Offline
Зарегистрирован: 23.11.2016

Ты ищешь экстрасенсов или что?

b707
Offline
Зарегистрирован: 26.05.2017

Orest, без кода не о чем говорить

sadman41
Offline
Зарегистрирован: 19.10.2016

Поди GyverDog замешан в преступлении...

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Orest пишет:

Доброе время суток. Беспокоит меня вопрос, прошу подсказать решение. В свой проект хочу добавить watchdog. На одной и той же плате Arduino хочет работает, а хочет нет. То есть когда проект фактически пуст (10 строк кода) – то отлично работает, когда большой (более 900 строк кода) вообще не реагирует на переполнение по времени. Пытался экспериментировать с настройками компилятора (уровни оптимизации) Arduino IDE, так в момент переполнения по времени просто повисает или ведет себя не адекватно. Пробовал разные библиотеки watchdog, эффект почти тот же. Что не так?

А воткнуть мониторинг и проверить - на каком моменте скопытилась программа я понимаю, в облом?

Orest
Offline
Зарегистрирован: 02.11.2017

Вы серьёзно, весь код ?

Orest
Offline
Зарегистрирован: 02.11.2017

нет, мнения людей кто с этим сталкивался

Rumata
Rumata аватар
Offline
Зарегистрирован: 29.03.2019

Orest пишет:

Вы серьёзно, весь код ?

Только ту строку, в которой ошибка

Orest
Offline
Зарегистрирован: 02.11.2017

Этот микроконтроллер имеет режим апартного дебага, я замахался через терминал уже искать

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Orest пишет:

Этот микроконтроллер имеет режим апартного дебага, я замахался через терминал уже искать

Вы не уважаете собеседников, когда пишите капсом. 

Вы не опубликовали программу.

Здесь есть экстрасенсы - но они общаются исключительно матом.

Orest
Offline
Зарегистрирован: 02.11.2017

Rumata пишет:

Orest пишет:

Вы серьёзно, весь код ?

Только ту строку, в которой ошибка

Ошибка может быть только в генах программиста. :-) У меня создается впечатление, что среда Arduino IDE это большой глюк. 

Rumata
Rumata аватар
Offline
Зарегистрирован: 29.03.2019

Orest пишет:

Ошибка может быть только в генах программиста. :-) У меня создается впечатление, что среда Arduino IDE это большой глюк. 

Из первого утверждения логические вытекает второе. 

Orest
Offline
Зарегистрирован: 02.11.2017

mykaida пишет:

Orest пишет:

Этот микроконтроллер имеет режим апартного дебага, я замахался через терминал уже искать

Вы не уважаете собеседников, когда пишите капсом. 

Вы не опубликовали программу.

Здесь есть экстрасенсы - но они общаются исключительно матом.

Извиняюсь если унизил как-то, просто скопировались атрибуты с переводчика текста.

mykaida
mykaida аватар
Offline
Зарегистрирован: 12.07.2018

Orest пишет:

Извиняюсь если унизил как-то, просто скопировались атрибуты с переводчика текста.

Да мне то что?

Вас будут посылать нах..., пока Вы не проясните Вашу проблему.

А то:

 - У меня встаёт нефритовый посох на девок. А потом падает.

- А че за девки? Фотку можно?

- Нет. Просто падает...

ua6em
ua6em аватар
Offline
Зарегистрирован: 17.08.2016

Для начала дали бы знать, что там за ардуино, может жеж nano быть...

Green
Offline
Зарегистрирован: 01.10.2015

Orest, код под спойлер. Только так вам могут ещё как то помочь.

Orest
Offline
Зарегистрирован: 02.11.2017
  wdt_disable();
  wd = MCUSR & B00001000;
  bo = MCUSR & B00000100;
  ext = MCUSR & B00000010;
  pon = MCUSR & B00000001;
  MCUSR = MCUSR & B11110000;
  wdt_enable(WDTO_8S);
 
этот кусок кода влиять на ситуацию может?
b707
Offline
Зарегистрирован: 26.05.2017

А что он делает?

sadman41
Offline
Зарегистрирован: 19.10.2016

Показывает причину ребута. Теоретически.

wdrakula
wdrakula аватар
Offline
Зарегистрирован: 15.03.2016

Orest пишет:

 У меня создается впечатление, что среда Arduino IDE это большой глюк. 

Можно уточнить, что ты называешь "среда Arduino IDE"? Кроме того, что IDE уже содержит слово "среда", только на аглицком, но это уже придирки. ;)).

ИДЕ - надстройка на JAVA для компилятора, в случае процессора AVR это avr-GCC. Плюс ядро и очень небольшое количество базовых библиотек. Причем ни ядром, на базовыми библиотеками"от Ардуино" программист совершенно не обязан пользоваться.

Orest
Offline
Зарегистрирован: 02.11.2017

sadman41 пишет:
Показывает причину ребута. Теоретически.
Таки делает это.