Страница 1 из 1

Установка часов из меню.

Добавлено: 01.12.2016{, 11:25}
robocraft
Приветствую. Имеется дисплей 1602 и часы DS1302, линейка из 4х реле. Хочу сделать несколько реле что бы включались по будильнику. Что то не могу понять как организовать установку времени и даты через меню на сами часы и на будильники. Если есть у кого нибудь готовый вариант в FLPorg скиньте пожалуйста или объясните хотя бы в общих чертах как делать. Так же нужно что бы дисплей гас через пару минут если нет активности на кнопках, в принципе есть мысли на этот счёт, но может есть у кого нибудь готовое решение. Спасибо.

Установка часов из меню.

Добавлено: 01.12.2016{, 12:53}
romechka
я не давно сам интересовался этой темой , там есть 1 вариант   http://forum.flprogwiki.ru/viewtopic.php?f=18&t=1410

Установка часов из меню.

Добавлено: 01.12.2016{, 13:15}
Phazz
Я так сделал. Чтобы выключить экран, есть блок управление подсветкой в дисплеях.

Установка часов из меню.

Добавлено: 01.12.2016{, 13:30}
robocraft
romechka, как то там замудрённо, можно наверное сделать проще, у меня есть идея сделать входы + и - отдельно от меню, а может есть смысл вообще на переключателе сделать, надо поковыряться с этим.

Phazz, Про включение подсветки я знаю, я хочу сделать что бы отключалась когда не нажимаются кнопки 1-2 минуты.

Установка часов из меню.

Добавлено: 01.12.2016{, 13:41}
Dev1
Входы кнопок подключаете на блок OR, с него через ТТ триггер на таймер TOF, выход на дисплей. В таймере ставите время отключения. После каждого нажатия любой клавиши таймер перезапускается.

Установка часов из меню.

Добавлено: 01.12.2016{, 13:42}
Phazz

Или нужно, чтобы дисплей совсем чистый был?

Установка часов из меню.

Добавлено: 01.12.2016{, 13:46}
rw6cm
Dev1 писал(а):что бы отключалась когда не нажимаются кнопки 1-2 минуты
Видео урок   25 минута

Установка часов из меню.

Добавлено: 01.12.2016{, 14:07}
robocraft

Вот к примеру смена часов. Кнопку К-1 можно активировать при пункте меню смены часов триггером, а на экран выводить текущее время, сразу будет видно как время меняется при нажатии кнопки. Счётчик до 24, при 24 на сброс. Не нужны переменные, часы устанавливаются налету и сразу отображается на экран текущее время. Следующее подменю сделать установку минут, счётчик до 60 на 60 сброс. Мне кажется такая реализация проще.

Установка часов из меню.

Добавлено: 01.12.2016{, 14:34}
Phazz
Мне кажется у меня проще. Добавь минуты и отображение времени и уже не так все аккуратно )))

Установка часов из меню.

Добавлено: 01.12.2016{, 14:35}
Dev1
rw6cm писал(а):Цитата Dev1 ()что бы отключалась когда не нажимаются кнопки 1-2 минуты
Видео урок   25 минута
Если вы обращались ко мне, то что я предложил работает и опробовано в протеусе. В 6 посте то же самое.

Установка часов из меню.

Добавлено: 01.12.2016{, 14:49}
rw6cm
Dev1 писал(а):Если вы обращались ко мне
странно взял цитату из 4 поста robocraft, а привязало к вам.

Установка часов из меню.

Добавлено: 01.12.2016{, 15:43}
robocraft
В общем вот что собрал. Установка времени на лету так сказать, без записи в память и без переменных. Есть не значительный минус, счётчики запоминают установки и при следующей смене времени, при входе в меню установки времени, устанавливают то значение, которое в счётчике было в прошлый раз, но думаю это не критично, время устанавливается не так часто. Ещё что я не доработал, это что бы при долгом нажатии на кнопку SET ускорялся набор, надо тыкать, но думаю это решается. Установку секунд я не делал, сделал просто сброс на 0.

В проекте 4 кнопки. Переключатель меню, вход, выход и set+ для установки значений. Это минимальный набор, можно расширить.

Дисплей 1602. Часы DS1302.

Что думаете, жизнеспособная схема?

Установка часов из меню.

Добавлено: 01.12.2016{, 19:31}
Phazz
Чтобы время в счетчика было текущим сделай внешний вход значения счетчика и подать на него значение времени.
Минимальный набор можно до 2 кнопок сократить. Вход и переключение меню по одной кнопке. Выход по таймеру или пункт выхода в меню сделать.

Установка часов из меню.

Добавлено: 02.12.2016{, 10:03}
robocraft
Phazz, на вход счётчика стоит кнопка. Я решил попробовать другие варианты, посмотреть что можно ещё сделать. Не нравится мне с счётчиками. Если сейчас делать кнопку установки в минус, то надо будет делать сравнения, прикручивать ещё кучу фигни. Думаю не зря сделали запись в память значений меню, надо её использовать, к тому же в меню уже реализовано долгое нажатие кнопки и ограничение придельных значений.

Установка часов из меню.

Добавлено: 02.12.2016{, 10:11}
Phazz
На счетчике есть вход на начальное значение int. А через меню я еще в начале выкладывал. Там все проще.

Установка часов из меню.

Добавлено: 02.12.2016{, 10:21}
Dev1
Не пойму, чем вам не нравится сохранение в EEPROM в меню, зачем еще что то городить. Если нужно чтоб в меню изменения были с установленных значений то делаете вход с данных из EEPROM. Да и кнопки там 3 за глаза(из удобств), + - и SET.

Установка часов из меню.

Добавлено: 02.12.2016{, 14:44}
robocraft
В общем я сделал часы с установкой времени и будильником. Немного изменил установку часов от предыдущего варианта. При установки часов теперь не надо тыкать кнопку, можно зажать. Когда срабатывает будильник, дисплей мигает 5 раз. Будильник можно отключать и включать.  Для тех кому интересно я немного от комментировал блоки.





Добавлено (02.12.2016, 14:44)
---------------------------------------------
Dev1, я слышал что EEPROM ограничена на количество записей. Потом типо память дохнет. Может это только слухи. Да и к тому же у часов своя память есть. Тут можно разве что будильник записывать, что бы при отключении питания не сбивался. Что касается кнопок, я распаял старую механическую клавиатуру, у меня теперь более 50 кнопок из которых я потом сделаю резистивную панельку что бы в аналоговый вход включить, для экономии выводов.

Установка часов из меню.

Добавлено: 02.12.2016{, 20:50}
Dev1
robocraft писал(а):я слышал что EEPROM ограничена на количество записей. Потом типо память дохнет. Может это только слухи.
Есть такое: The Flash memory has an endurance of at least 10,000 write/erase cycles.
Ну и да, если есть память у часов, зачем портить у мк.

А вот на счет кнопок, тут кому как. Я управляюсь и с 3 кнопками, аналоговые. 5 кнопок паять лень, да и не нужны они