Конфликт п/блоков
Конфликт п/блоков
Приветствую! Имеется явление: при добавлении к проекту, блока MQTT+SIM800, отрубается все. По крайней мере дисплей 0,96I2C не работает и не реагируют кнопки на переключение меню, не работает генератор. Подозреваю, что этот блок что то где-то перекрывает, но т.к. пока ничего в коде не понимаю, найти причину не могу. Прошу помощи!
Конфликт п/блоков
Этот блок пока не подключится к GPRS и к MQTT брокеру дальше Setup-а не идет выполнение программы
И для работы в загрузчике Ардуино должен поддерживаться Wathdog.
И для работы в загрузчике Ардуино должен поддерживаться Wathdog.
Конфликт п/блоков
Я правильно понимаю логику..?Anydy писал(а): 09 дек 2018, 13:20 Этот блок пока не подключится к GPRS и к MQTT брокеру дальше Setup-а не идет выполнение программы
И для работы в загрузчике Ардуино должен поддерживаться Wathdog.
Включается ардуино с csim800, идет инициализация и подключение sim800, когда подключение произошло watchdog перезагружает ардуино, при следующей загрузке ардуино видит коннект модуля и продолжает цикл загрузки остального кода. Т.е. теоретически если резетнуть ардуино руками, после того как sim800 подключилось, все пойдет по плану? (сейчас не могу проэксперементировать т.к. "конструкции" нет под руками)
Конфликт п/блоков
Логика такая -
При старте ардуино сначала соединяется с модулем SIM800, затем ждет пока установится GPRS соединение, затем ждет пока установится связь с MQTT брокером и стартует основной цикл программы. При пропадании какого либо соединения (GPRS, MQTT) автоматически происходит переподключение. WatchDog следит за зависанием Ардуино - если при выполнении программы в течении 4 секунд не произошел сброс Watchdog таймера (значит зависло) - происходит ресет Ардуино.
При старте ардуино сначала соединяется с модулем SIM800, затем ждет пока установится GPRS соединение, затем ждет пока установится связь с MQTT брокером и стартует основной цикл программы. При пропадании какого либо соединения (GPRS, MQTT) автоматически происходит переподключение. WatchDog следит за зависанием Ардуино - если при выполнении программы в течении 4 секунд не произошел сброс Watchdog таймера (значит зависло) - происходит ресет Ардуино.
Конфликт п/блоков
Вроде бы что-то проясняется..
Если я правильно понял, нужно просто подождать, когда произойдет подключение к брокеру, тогда и заработает остальная программа, и включиться дисплей.. и все остальное? А вочдог только для стабильности и так сказать автономности?
Если я правильно понял, нужно просто подождать, когда произойдет подключение к брокеру, тогда и заработает остальная программа, и включиться дисплей.. и все остальное? А вочдог только для стабильности и так сказать автономности?
Конфликт п/блоков
Да, пока не будет подключения к брокеру - другое ничего не будет работать ...Ватчдог для перезагрузки контроллера в случае зависания, работает на загрузчике Optiboot, вроде на Uno R3 тоже должен, если загрузчик не поддерживает Watchdog, то Ардуино уйдет в бесконечную перезагрузку, придется перешивать загрузчик через программатор или другую АрдуиноDimm писал(а): 09 дек 2018, 17:23нужно просто подождать, когда произойдет подключение к брокеру, тогда и заработает остальная программа, и включиться дисплей.. и все остальное?
В общем Whatchdog можно отключить убрав соответствующие строки в блоке.
Ну и все таки это пример - разработка ПБ!
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 8 гостей