FLProg
Вход на сайт
Логин:
Пароль:
Поиск
...
Статистика
Пятница, 22.09.2017, 11:01
Приветствую Вас Гость | RSS
Главная | Регистрация | Вход

Поиск по сайту


Форум
[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
Страница 1 из 11
Модератор форума: support, Сергей 
Форум » Основной » Спросить у знатоков » Nextion и внешний RTC DS3231
Nextion и внешний RTC DS3231
SuperMuh Дата: Четверг, 29.06.2017, 12:11 | Сообщение # 1
Рядовой
Группа: Проверенные
Сообщений: 2
Награды: 0
Репутация: 0
Статус: Offline
Добрый день! Сижу, осваиваю железки и Flprog. Есть задача: вывод часов и минут на главном экране в Nextion (обновляются показания раз в секунду), но можно настроить время, зайдя на второй экран.

С только лишь выводом на главный экран проблем нет, все работает, время считывается из RTC, потом выводится в переменную Некстиона и раз в секунду обновляется.

На втором экране, когда переходишь на него, статично рисуются последние значения часов и минут. То есть, один раз выводится значение и больше не обновляется уже (так и задумано).

Потом можно с помощью кнопок типа "вверх" и "вниз" на экране корректировать время.

Тут тоже проблем нет. Приращение или уменьшение значений настроил в самом Некстионе. По задумке получается, что при переходе на этот второй экран значения из RTC разово передаются в Некстион, потом меняются при нажатии, но хранятся до нажатия на кнопку "Установить" в самой панели.

Далее ардуина отслеживает нажатие на эту кнопку и должна перезаписать значение в RTC, Некстион должен вернуть главный экран.

И тут начинается... Часы показывают на 1 больше. То есть, если выставить часы на 12:40, например, то при переходе на главный экран, там будет 13:41. А если ставить 23:15, то на главном будет 23:16 (после 23 не прибавляет, с 59 в минутах так же - на 00 не ставит).
А при каждом включении системы вообще время ставит 01:01.

Ну и код одной из кнопок в Некстионе
Прикрепления: 1219068.jpg(21Kb) · 0796601.jpg(22Kb) · 8456872.jpg(13Kb) · 5301321.jpg(31Kb) · 1483260.jpg(30Kb)


Сообщение отредактировал SuperMuh - Четверг, 29.06.2017, 12:20
 
SuperMuh Дата: Четверг, 29.06.2017, 12:21 | Сообщение # 2
Рядовой
Группа: Проверенные
Сообщений: 2
Награды: 0
Репутация: 0
Статус: Offline
Прикрепления: 7136480.jpg(49Kb)
 
Siberian Дата: Понедельник, 03.07.2017, 15:42 | Сообщение # 3
Полковник
Группа: Проверенные
Сообщений: 366
Награды: 5
Репутация: 4
Статус: Offline
Можно посмотреть Ваш проект FLProg и HMI, у меня почему-то вобще не выводятся часы на панель...
 
ACDC Дата: Среда, 05.07.2017, 08:35 | Сообщение # 4
Рядовой
Группа: Проверенные
Сообщений: 6
Награды: 0
Репутация: 0
Статус: Offline
привет SuperMuh попробуй код на кнопке поменять

hour_set.val=hour_set.val+1
if (hour_set.val>23)
{
hour_set.val=0
}

в FLprog у меня вот так настройка часов работает
Прикрепления: 3711477.png(13Kb)


Сообщение отредактировал ACDC - Среда, 05.07.2017, 08:37
 
sser Дата: Четверг, 31.08.2017, 20:58 | Сообщение # 5
Подполковник
Группа: Проверенные
Сообщений: 260
Награды: 6
Репутация: 4
Статус: Offline
Цитата ACDC ()
привет SuperMuh попробуй код на кнопке поменять
hour_set.val=hour_set.val+1
if (hour_set.val>23)
{
hour_set.val=0
}
лучше вот так записать

hour_set.val++
if(hour_set.val>23)
{
hour_set.val=0
}




Сообщение отредактировал sser - Четверг, 31.08.2017, 20:59
 
pan Дата: Пятница, 01.09.2017, 13:09 | Сообщение # 6
Генерал-лейтенант
Группа: Проверенные
Сообщений: 800
Награды: 37
Репутация: 33
Статус: Offline
sser, это абсолютно одно и тоже
 
Форум » Основной » Спросить у знатоков » Nextion и внешний RTC DS3231
Страница 1 из 11
Поиск:

FLProg © 2017
Яндекс.Метрика