Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
  • Страница:
  • 1
  • 2
  • 3
  • 4

ТЕМА: Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 11 дек 2018 08:57 #1

  • HOLER1957
  • HOLER1957 аватар
  • Не в сети
  • Пользователь заблокирован
  • Сообщений: 16
Прошу помочь с написанием прошивки для часов по следующему ТЗ.
1.Исходные данные:
1.1 МК - Всеми любимый ATMEGA8
1.2 Часовая микросхема DS1307
1.3 Датчик температуры и давления BMР-180 неплохо показал себя.Если у Вас есть лучше варианты по пунктам 1.2 и 1.3 пожалуйста!
1.4 Индикация LCD1602 с подсветкой. В перспективе , если ветка разрастется. LCD1604
2 Индикация:
2.1 ВРЕМЯ -часы, минуты в 24 часовом формате, через две мигающие в такт точки.
2.2 ДАТА -День, месяц Например 11 дек.( 1янв. 23 февр. и так далее )
2.3 ТЕМПЕРАТУРА и Атмосферное давление : +(-) 20*С , Р-744
2.4 БУДИЛЬНИК : 2шт. Значок и номер будильника если активен . Значок на Ваш вкус.Сигнал будильника -два коротких сигнала в течениии 30сек. без повтора с отключением сигнала любой кнопкой.
3. КУКУШКА :также двойной сигнал каждый час с возможностью установки времени активации.
4.ВАРИАНТЫ индикации :
4.1 Первая строка-Число , месяц.время - например : 11 дек. 9:35
Вторая строка : Температура ,Атм.давление например : 23*С Р-745
Значок будильника - в какую строку войдет.
5. ВЫКЛЮЧЕНИЕ ИНДИКАЦИИ( можно синхронизировать с кукушкой ) в ночное время с возможностью включения любой кнопкой , если понадобится.
6. МЕНЮ настроек:
6.1 ЧАСЫ с коррекцией хода в 00 часов - как обычно.
6.2 установка ДАТЫ
6.3 БУДИЛЬНИК : установка по дням недели времени активации будильников
6.4 КУКУШКА : Установка времени активации.
Ну вот, как то так! Вроде все что хотел. МНОГО?
Последнее редактирование: 11 дек 2018 10:02 от Soir.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 11 дек 2018 10:05 #2

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
День недели не нужно выводить на основной экран?
Ваш индикатор поддерживает кириллицу?
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 11 дек 2018 10:33 #3

  • HOLER1957
  • HOLER1957 аватар
  • Не в сети
  • Пользователь заблокирован
  • Сообщений: 16
Спасибо ! день недели ,если войдет, сокращенно (ВС. ПН. и т.д ) перед числом - можно . Дисплей поддерживает кириллицу
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 11 дек 2018 11:54 #4

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
Так нормально? Что нужно поправить, даже мелочи, пишите сразу.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 11 дек 2018 12:35 #5

  • HOLER1957
  • HOLER1957 аватар
  • Не в сети
  • Пользователь заблокирован
  • Сообщений: 16
ТО ,что нужно ! Даже лучше чем я предлагал -день недели -впереди . Так логичней ! единственное -после дек поставить точку .
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 21 дек 2018 08:08 #6

  • goller1957
  • goller1957 аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 43
Доброго дня Уважаемый SOIR !Будет ли продолжение ?
Последнее редактирование: 21 дек 2018 09:23 от Oto. Причина: п.м.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 21 дек 2018 09:38 #7

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
goller1957 = HOLER1957?

Да, на днях, думаю, напишу прошивку.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 21 дек 2018 10:20 #8

  • goller1957
  • goller1957 аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 43
Да ! Спасибо , ждем !
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 21 дек 2018 19:20 #9

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
goller1957 пишет:
ждем !
"Ждем", это goller1957 и HOLER1957?

В общем-то прошивка уже почти была готова, сейчас немного доработал, но нужно проверить, хотя бы для начала в симуляторе.

В основном придерживался ТЗ, но что непонятно - спрашивайте, что не так - пишите.
В архиве проект в Proteus, это еще не схема. Будут вопросы по составлению схеме - пишите. Если не уверены, покажите перед изготовлением платы.
Последнее редактирование: 16 янв 2019 12:22 от Soir. Причина: Удаление неактуального вложения
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 21 дек 2018 20:55 #10

  • goller1957
  • goller1957 аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 43
Прокрутил в Протеусе - все как просил , работает! Спасибо ! Кукушку , я так понимаю, объединили с выключением подсветки индикатора? Будильник один или два ? Номер будильника будет выводиться на дисплей ? Завтра , постараюсь, накидать на макетку - отпишусь- как в реальности будет работать. По схеме : вроде все понятно.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 21 дек 2018 21:21 #11

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
goller1957 пишет:
Кукушку , я так понимаю, объединили с выключением подсветки индикатора?
Как бы да, но подсветка включается и в ночное время при входе в меню. Выключится в этом случае через 10 сек от последнего нажатия на кнопки.
Также в ночное время подсветку можно включить кнопкой Plus из основного режима, выключить кнопкой Minus. Или выключится автоматически при следующем наступлении ночного режима.

goller1957 пишет:
Будильник один или два ?
Про два будильника не понял, опишите подробнее их работу. Пока будильников 7 - один на каждый день недели. Предусмотрено также глобальное отключение всех будильников и персональное по дням.
Последнее редактирование: 21 дек 2018 21:22 от Soir.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 22 дек 2018 09:02 #12

  • goller1957
  • goller1957 аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 43
1.Да , действительно, так будет хорошо, режим кукушки и подсветка выключаются в ночное время в установленном интервале , а включение подсветки в ночное время желательно ЛЮБОЙ кнопкой ( где в темноте искать кнопку плюс или меню ?!), выключение подсветки через 10 секунд - автоматом.
2. Будильники : Второй будильник предполагался на установку другого времени ,чтобы не нарушать настроенный режим первого будильника .Упустил -да глобальное отключение и по дням недели -хорошо!
Последнее редактирование: 22 дек 2018 09:24 от goller1957.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 22 дек 2018 09:27 #13

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
goller1957 пишет:
выключение подсветки через 10 секунд - автоматом.
Хорошо, будет 10 сек.

goller1957 пишет:
Второй будильник предполагался на установку другого времени
То есть, на каждый день недели по два будильника?

P.S.
Сделал два будильника на каждый день.
Вложения:
Последнее редактирование: 16 янв 2019 12:24 от Soir.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 23 дек 2018 19:04 #14

  • goller1957
  • goller1957 аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 43
Добрый вечер Уважаемый SOIR ! Ну , что сказать , песня ! Все заработало сразу ! Все включается и настраивается ! Один единственный вопрос , но походу, мы проговаривали его позже - не высвечивается номер будильника. Обвязка Atmega 8 стандартная. Подсветку (сигнал Light ) , думаю, включать( выключать) через транзисторный ключ.Не совсем догнал с выходом синхронизации SYNC- четвертая нога а так Огромное СПАСИБО!!
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 23 дек 2018 19:38 #15

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
goller1957 пишет:
не высвечивается номер будильника.
Куда, как, какой номер выводить? Распишите подробно.

goller1957 пишет:
Не совсем догнал с выходом синхронизации SYNC
Рудимент, просто никуда не подключайте.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 23 дек 2018 20:46 #16

  • goller1957
  • goller1957 аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 43
Наверное давайте сделаем так , если можно , : убираем значок "+" , значение температуры и значок будильника смещаем влево на освободившееся место , за значком будильника ставим номер 1 и (или 2 ) если они активны. Значки цифр ,например , как в Вашем таймере для управления освещением . Смотрите вложение
Вложения:
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 23 дек 2018 21:13 #17

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
goller1957 пишет:
ставим номер 1 и (или 2 ) если они активны.
Вот здесь я и не понимаю. Давайте пример. Вот сегодня воскресенье, оба будильника отключены. Что сейчас должно быть на дисплее? А что должно быть завтра в 6-00, в 7-30 или в 8-20, если на завтра будильник 1 установлен на 7-00, а 2-ой на 8-00?
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 23 дек 2018 21:34 #18

  • goller1957
  • goller1957 аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 43
Как вариант : суббота и воскресенье - Будильники не активны- цифры не горят и значка будильника нет , ПН.ВТ. и т.д появляется значок будильника и цифра 1- основной будильник . и ,если включен второй будильник в какой то день , я думаю это разовое включение , горит и цифра 2. Если глобально отключено все - нет ни цифр ни значка будильника . Как то так .
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 23 дек 2018 21:48 #19

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
То есть. В моем примере сегодня в 0-00 на дисплее появляется 1 и 2. И "висят" на дисплее до 23-59 понедельника? Так?
Если нет, тогда ещё раз прошу - на примере.

P.S.
По Вашему описанию следует, что значок будильника (колокольчик) вообще лишний...
Последнее редактирование: 23 дек 2018 21:54 от Soir.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 24 дек 2018 07:25 #20

  • goller1957
  • goller1957 аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 43
в принципе да! значок будильника вроде и не нужен, если высвечиваются номера включенных будильников. Номер активного будильника получается горит все время пока в меню по дням недели стоит команда ВКЛ. Например с ПН до ПТ, а в СБ и ВС стоит ВЫКЛ. Цифра 1 не горит. Также и со вторым будильником : например в
ВС. или любой другой день ставим время включения - в этот день получается горит цифра 2 . Ну, получается с 00-00 часов до 23-59 цифры горят в обоих случаях.
Последнее редактирование: 24 дек 2018 07:27 от goller1957.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 24 дек 2018 08:10 #21

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
goller1957 пишет:
Ну, получается с 00-00 часов до 23-59 цифры горят в обоих случаях.
Какой смысл в такой индикации? Если, например, в понедельник будильник должен сработать в 7-00. Значок 1 в воскресенье отключен, включится только в 0-00. Вряд ли кто-то будет ночью контролировать - есть он или нет. В 7-00 сработает будильник, тут на него посмотрят. А какой смысл, если событие уже произошло? Он будет отображаться весь день, хотя возможно на вторник он отключен. То есть, ложась спать, смотрите - ok, есть единичка. Но на самом деле будильник на вторник отключен и в 0-00 пропадет значок. Правда об этом Вы узнаете, когда проспите.
То есть, в итоге информация ни о чем. Чтобы быть уверенным, нужно не взирая на значки, зайти в настройки и просмотреть конкретный день.

При размеренной жизни будильник один раз настраивается на всю неделю и так работает месяцами. Востребованным может оказаться только глобальное отключение, чтобы не перебирать все настройки на случай праздников, внеплановых выходных, отпуска и т.п. То есть, просто колокольчик.
Я бы еще посоветовал дополнительную кнопку ALARM. По этой кнопке оперативно включать/выключать глобальное разрешение без захода в меню. У меня по этой кнопке еще управляется повтор будильника.
Принцип такой: сработал будильник - кнопка ALARM - отключили. Начинает часто мигать значок будильника, независимо день/ночь включается дисплей. Если в повторе нет необходимости - нажать еще раз ALARM. Если повтор не отключен - через заданное время прозвучит еще один сигнал. Длительное нажатие на ALARM включает/отключает глобальное разрешение.
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 24 дек 2018 09:02 #22

  • goller1957
  • goller1957 аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 43
Убедили ! Логика в Вашем размышлении есть! Вопрос с индикацией номеров будильников снимаем .
И еще : бузер со встр.генератором ? Ну ,что дальше делаем прогон на недельку и будем клепать железо,хотя по опыту сборки Ваших творений все работает на ПЯТЬ! Да - что то народ на форуме не задает никаких вопросов ? неужели тема не интересна ?
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 24 дек 2018 09:18 #23

  • Soir
  • Soir аватар
  • Не в сети
  • Moderator
  • Сообщений: 9223
  • Спасибо получено: 3234
  • Respect Site Sponsor 2019 Author
goller1957 пишет:
бузер со встр.генератором ?
Да.

goller1957 пишет:
неужели тема не интересна ?
Все, кто хотел, уже с часами, барометрами и термометрами...
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 24 дек 2018 09:31 #24

  • goller1957
  • goller1957 аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 43
Ну в общем то да, на форуме часов на любой вкус !у меня, правда, все часы LED- захотелось вот в таком исполнении . Еще раз РЕСПЕКТ и УВАЖУХА !!
Администратор запретил публиковать записи гостям.

Часы-термометр на DS1307, BMP180, LCD1602 и ATmega8 08 янв 2019 10:46 #25

  • Фаза
  • Фаза аватар
  • Не в сети
  • I go sometimes
  • Сообщений: 49
  • Спасибо получено: 1
Ув. Soir, возможно ли переделать или доработать прошивку под индикатор без поддержки кириллицы? И возможно ли использовать вместо DS1307 модуль DS3231?
Администратор запретил публиковать записи гостям.
  • Страница:
  • 1
  • 2
  • 3
  • 4
Модераторы: wolf2000, Vakula, Айнцвайдрайченко, Soir