Время с NTP

Ответить
hatul
Сержант
Сообщения: 147
Зарегистрирован: 06 май 2017, 18:40
Откуда: Netanya

Время с NTP

Сообщение hatul »

Собрал простенькие часы с получением времени с NTP. Все хорошо,но при переходе на летнее время придется менять часовой пояс,и перезаливать скетч. Решил сделать возможность переводить время вучную. Добавил кнопку,переключатель и блок "сложение".
Вопрос: какой блок добавить,чтобы при первом нажатии кнопки на переключатель шла единица,а при повторном-ноль. Или ,проще,вместо кнопки поставит фиксированный переключатель?
И еще вопрос,не совсем относящийся к FLProg. Если часы были некоторое время отключены от питания,то матрица загорается так:
Изображение
Приходится несколько раз передергивать питание,пока не загрузится так:
Изображение
Можно что то сделать чтобы загружалось нормально?
NTP_Max7219.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
SergeyShikal
Лейтенант
Сообщения: 593
Зарегистрирован: 30 авг 2018, 17:15
Откуда: Иркутская область
Имя: Сергей
Благодарил (а): 2 раза
Поблагодарили: 1 раз

Время с NTP

Сообщение SergeyShikal »

Какой блок питания? После кнопки тт тригер поставь.
hatul
Сержант
Сообщения: 147
Зарегистрирован: 06 май 2017, 18:40
Откуда: Netanya

Время с NTP

Сообщение hatul »

[ref]SergeyShikal[/ref], Сработало! Практически то что надо.Правда при отключении и включении питания время сбивается.Я подозреваю,что надо как то записать в EEPROM ,а как практически сделать не знаю.
Блок питания -либо USB от компьютера,либо зарядки от телефонов.
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

Время с NTP

Сообщение edyapd »

hatul писал(а): 28 мар 2020, 14:21 Правда при отключении и включении питания время сбивается.Я подозреваю,что надо как то записать в EEPROM
Может я чего не допонял, вы собираетесь текущие время записывать в ЕЕПРОМ? Какой в этом смысл?
hatul
Сержант
Сообщения: 147
Зарегистрирован: 06 май 2017, 18:40
Откуда: Netanya

Время с NTP

Сообщение hatul »

edyapd писал(а): 28 мар 2020, 15:27 вы собираетесь текущие время записывать в ЕЕПРОМ
Не совсем. Допустим сейчас 14.00. Перешли на летнее время. Значит время стало 15.00. Я нажимаю кнопку,время становится 15.00.Все нормально,все прекрасно. Но при отключении и затем включении питания время вновь становится 14.00.Проблема небольшая,надо просто опять нажать кнопку. Но можно как то запомнить,что сейчас время +1.
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

Время с NTP

Сообщение edyapd »

[ref]hatul[/ref], теперь понял. Да, вполне возможно в какую-нибудь ячейку ЕЕПРОМ записывать "0" или "1". И в дальнейшем значение этой ячейки прибавлять к значению часа. Единственное (если у вас не выводится дата), вам придётся отслеживать когда будет 24 часа и заменять на 0. Если будет выводится и дата, то надо будет ещё и её корректировать.
Аватара пользователя
SergeyShikal
Лейтенант
Сообщения: 593
Зарегистрирован: 30 авг 2018, 17:15
Откуда: Иркутская область
Имя: Сергей
Благодарил (а): 2 раза
Поблагодарили: 1 раз

Время с NTP

Сообщение SergeyShikal »

Питание нужно ампера 2 на 5 вольт. Попробуй так
NTP_Max7219 с еепром.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
hatul
Сержант
Сообщения: 147
Зарегистрирован: 06 май 2017, 18:40
Откуда: Netanya

Время с NTP

Сообщение hatul »

[ref]SergeyShikal[/ref], Нет,так не подходит.В таком варианте не добавляется 1,а просто читает 1 из EEPROM. Например: сейчас 19.00.Нажимаю кнопку становится 11.00.Просто вместо 9 считало из EEPROM 1. Кстати мой вариант тоже не проходит. Время 19.00. Значит летнее должно быть 20.00. Жмем кнопку-и получаем 10.00. Единица добавилась только ко второй цифре,т.е.к девятке. А первая как была 1,так и осталась.Так что нужен какойто другой вариант.Есть мысль попробовать сделать по принципу,как сделаны мигающие разделительные точки. Добавить в первой матрице массив,только со сдвигом на 1.
Может кто то знает еще варианты,попроще.
edyapd
Капитан
Сообщения: 768
Зарегистрирован: 20 сен 2019, 11:38
Имя: Эдуард

Время с NTP

Сообщение edyapd »

Набросал по-быстрому. Толком не проверял. Может заработает.
NTP_Max7219 с еепром_1 вариант.flp
NTP_Max7219 с еепром_2 вариант.flp
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
SergeyShikal
Лейтенант
Сообщения: 593
Зарегистрирован: 30 авг 2018, 17:15
Откуда: Иркутская область
Имя: Сергей
Благодарил (а): 2 раза
Поблагодарили: 1 раз

Время с NTP

Сообщение SergeyShikal »

hatul писал(а): 28 мар 2020, 20:33 [ref]SergeyShikal[/ref], Нет,так не подходит.В таком варианте не добавляется 1,а просто читает 1 из EEPROM. Например: сейчас 19.00.Нажимаю кнопку становится 11.00.Просто вместо 9 считало из EEPROM 1. Кстати мой вариант тоже не проходит. Время 19.00. Значит летнее должно быть 20.00. Жмем кнопку-и получаем 10.00. Единица добавилась только ко второй цифре,т.е.к девятке. А первая как была 1,так и осталась.Так что нужен какойто другой вариант.Есть мысль попробовать сделать по принципу,как сделаны мигающие разделительные точки. Добавить в первой матрице массив,только со сдвигом на 1.
Может кто то знает еще варианты,попроще.
Точно блок сложения не поставил. Поставить часы на DS3231 и забыть о летнем времени, сделать съемными для синхронизации с пк раз в год, если критично несколько секунд.
dsfbuy
Сержант
Сообщения: 172
Зарегистрирован: 03 ноя 2018, 12:40
Откуда: Братск
Имя: Виктор

Время с NTP

Сообщение dsfbuy »

hatul писал(а): 28 мар 2020, 10:56 при переходе на летнее время придется менять часовой пояс,и перезаливать скетч
А почему не менять пояс программно?
У вас нет необходимых прав для просмотра вложений в этом сообщении.
hatul
Сержант
Сообщения: 147
Зарегистрирован: 06 май 2017, 18:40
Откуда: Netanya

Время с NTP

Сообщение hatul »

[ref]SergeyShikal[/ref],
SergeyShikal писал(а): 29 мар 2020, 08:11 Поставить часы на DS3231 и забыть о летнем времени
Ну это самый простой вариант.А мы не ищем легких путей. А если серьезно-весь смысл затеи-уйти от DS3231. И потом,я дарю часы родственникам,которые живут не то что в других городах,а и в других странах. Хотя,по моему, в России летнее время отменили.

Отправлено спустя 7 минут 47 секунд:
[ref]dsfbuy[/ref],
dsfbuy писал(а): 29 мар 2020, 08:41 А почему не менять пояс программно?
Так это и есть,то что я пытаюсь сделать. По Вашей схеме,не понял,как переменная может знать,в какой день меняется время.

Отправлено спустя 7 минут 31 секунду:
[ref]edyapd[/ref],
edyapd писал(а): 29 мар 2020, 05:39 Толком не проверял. Может заработает.
На первый взгляд должно заработать. Немного попозже проверю.
dsfbuy
Сержант
Сообщения: 172
Зарегистрирован: 03 ноя 2018, 12:40
Откуда: Братск
Имя: Виктор

Время с NTP

Сообщение dsfbuy »

Чтобы при перезагрузке знать какой сейчас часовой пояс, можно использовать пользовательские параметры или сохранять переменную в епром.
У вас нет необходимых прав для просмотра вложений в этом сообщении.
Аватара пользователя
SergeyShikal
Лейтенант
Сообщения: 593
Зарегистрирован: 30 авг 2018, 17:15
Откуда: Иркутская область
Имя: Сергей
Благодарил (а): 2 раза
Поблагодарили: 1 раз

Время с NTP

Сообщение SergeyShikal »

hatul писал(а): 29 мар 2020, 10:01 Ну это самый простой вариант.А мы не ищем легких путей. А если серьезно-весь смысл затеи-уйти от DS3231. И потом,я дарю часы родственникам,которые живут не то что в других городах,а и в других странах. Хотя,по моему, в России летнее время отменили.
Вы им потом по удаленке-телефону-смс -будете модуль к роутеру подключать после смены имени или пароля на таковом. Двое часов одни дома, вторые на улице при хороших минусовых температурах разница за 8 месяцев в 3 секунды.
hatul
Сержант
Сообщения: 147
Зарегистрирован: 06 май 2017, 18:40
Откуда: Netanya

Время с NTP

Сообщение hatul »

SergeyShikal писал(а): 29 мар 2020, 15:33 разница за 8 месяцев в 3 секунды
Да я согласен. Я на работу года 4 назад сделал.И каждые пол года перевожу зима/лето. Так вот за полгода убегают максимум на 4-5 секунд.Куда уж лучше. Я даже кнопки настройки времени не делаю.Но уж коли взялся за NTP надо довести до конца. Кстати время сейчас идет отлично. Часовой пояс переключается как положено. Осталось разобраться с EEPROM.

Отправлено спустя 5 минут 1 секунду:
SergeyShikal писал(а): 29 мар 2020, 15:33 Вы им потом по удаленке-телефону-смс -будете модуль к роутеру
Ну это как в том анекдоте"дядя вы это сейчас с кем разговаривали!" Если бы я все это знал и умел,я бы не на заводе железяки таскал,а в светлом кабинете сидел.
Ответить

Вернуться в «Помогите, а то я "нимагу"»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 8 гостей