Доброго времени суток!
Реши сделать простенький проектик на ардуино. Небольшой настольный таймер с отсчетом до нового года. Буду использовать LCD дисплей 2004A, ардуино уно(после настройки и доработки переделаю проект на Нано), и модуль реального времени. Подскажите, как можно и нужно реализовать отсчет. С выводом на дисплей я справлюсь самостоятельно. Буду очень рад любым предложенным вами идеями.
b707
21.Ноябрь.2023 12:17:47
2
ХМ… а какие тут нужны идеи?
Вычисляете и запоминаете в коде дату 1 января 0 часов 0 минут в виде unix-time.
От модуля RTC получаете текущее время в том же unix-time.
Вычитаете из первого второе - получаете число секунд до Нового Года.
Надеюсь число секунд в число дней, часов и минут осилите перевести?
1 лайк
BOOM
21.Ноябрь.2023 12:22:43
3
Как нибудь пафосно! Можно с блёстками… ))
Green
21.Ноябрь.2023 12:25:56
4
Не забыть про високосные года, главное.
BOOM
21.Ноябрь.2023 12:28:53
5
Кто-то подобный отсчет со 2 января запускает?
Чёта не понял - это
Dev_Core:
простенький проектик
или же Вы не знаете
Одно с другим как-то слабо сочетается.
Реализуется это так.
для желаемой даты (нового года или там дня рождения Микки-Мауса)
заполняете структуру tm
;
преобразуете заполненную структуру в тип time_t
при помощи функции mktime
результат - переменная future
типа time_t
для текущего времени
со своих часов заполняете структуру tm
;
преобразуете заполненную структуру в тип time_t
при помощи функции mktime
результат - переменная now
типа time_t
вычитаете now
из future
. результат - количество секунд до желаемого момента.
делите количество секунд на 60. Результат - количество минут до желаемого момента
делите количество минут на 60. Результат - количество часов до желаемого момента
делите количество часов на 24. Результат - количество дней до желаемого момента
Как получить результат в виде Х дней, Y часов, Z минут объяснять надо? Или уж сами?
Green
21.Ноябрь.2023 12:34:48
7
Была мысль разместить свой проектик часов. Для наглядности. Делал малой своей как то двоичные часы. )
b707
21.Ноябрь.2023 12:40:49
8
Автор похоже сжался в углу от такого водопада предложений
Green
21.Ноябрь.2023 12:45:30
9
Нет, ну ЕвгенийП кого хош в бараний рог скрутит своим интеллектом.)
Те кто понимает - нет вопросов, а к то нет?..)
Кого я куда кручу? В кои-то веки решил подробно и скрупулёзно всё расписать (вместо обычного стёба) - опять не слава Богу
Злые вы все! Пойду-ка я от Вас кт-315’тым ноги отламывать. Вчерась дум отломал! И кто им такие ноги делал? Руки бы поотрывать!
Green
21.Ноябрь.2023 12:54:08
11
Ну вы же знаете, что со структурами у простого народа всё не слава богу. Так зачем его этим нагружать.)
BOOM
21.Ноябрь.2023 12:59:45
12
Надо проще быть. Называть их… штуками !
Эту штуку присваиваем другой шутке и так далее
Ну, как … спросили
Dev_Core:
как можно и нужно
я ответил.
Собсна, @b707 написал ровно тоже самое, тока менее подробно:
а издеваюсь, выходит, я
BOOM:
Называть их… штуками !
Правильный термин здесь - “хреновина”.
Green
21.Ноябрь.2023 13:04:22
16
hrenovina.odin = 1;
hrenovina.dva = 2;
Офигенно понятно.)
Но с tm. ей богу не понятнее.
BOOM
21.Ноябрь.2023 13:17:53
17
А вот с другой стороны - Как бы ты объяснил? “Пестики-тычинки” тут не пройдут…
Green
21.Ноябрь.2023 13:19:53
18
Просто свой массив.
date = {23, 11, 16.19. 0}
За стеной раздался выстрел и глухой удар об пол. Тс - догадался Евгений П.
2 лайка
b707
21.Ноябрь.2023 13:23:36
20
Думаю если ТС не поймет обьяснение ЕП или мое - он просто недостаточно мотивирован