Всем привет. Скорее всего не глюк, но мало ли...
Собираю проект Arduino+Nextion.
В проекте используется модуль часов реального времени DS3231. Для отладки использовал Протеус 7.1 и симулятор самого Некстиона. Подружил их через нуль-модемный эмулятор, все работает. Но если залить в железо, то начинается трэш)
А теперь попорядку (лишние блоки я поотключал от компилятора):
1. На первой плате смотрим какая страница выбрана в Некстионе, присваиваем соответствующей булевой переменной единичку.
2. На второй плате выводим время с DS3231 в соответствующие переменные (тип Number в Некстионе), но только если показания часов изменились и выбрана стартовая страница.
3. На шестой плате считываем значения из DS3231 в переменые типа Number в Некстион. Далее за дело берется Некстион. В нем запрограммированы локальные кнопки, которые значения часов и минут меняют в соответствующих диапазонах.
4. На седьмой плате происходит контроль нажатия кнопки "ПРИНЯТЬ", которая разрешает коррекцию времени уже в DS3231 и возвращает нас на главный экран.
Я проверил правильно ли я указал в Флпрог ID всех переменных из Некстиона (все соответствует), я попробовал отдельно прошить часы утилитой в Флпрог (время корректирует, все ОК)
Собственно, такая конструкция стабильно работает в паре Протеус-Некстион.
А в железе все печально...
Выкладываю видео работы в эмуляторе и в железе. И скрины из Флпрог.
[video][/video]
[video][/video]
Всем спасибо за внимание и за помощь.