Хочу представить еще одни часы с термометром на микроконтроллере. В основе устройства лежит микроконтроллер фирмы ATMEL серии AVR — ATMega8. Микроконтроллер работает с микросхемой реального времени DS1307 и цифровым датчиком температуры DS18B20.
Микросхема DS1307 представляет собой экономичные часы реального времени с последовательным интерфейсом, которая содержит часы-календарь с представлением информации в двоично-десятичном коде и 56 байт энергонезависимого статического ОЗУ. Адрес и данные передаются по двунаправленной двухпроводной последовательной шине. Информация о реальном времени и календаре представляется в секундах минутах, часах, дне, дате, месяце и годе. Если текущий месяц содержит менее 31 дня, то микросхема автоматически определит количество дней в месяце с учетом высокосности текущего года. Часы работают или в 24-часовом или 12-часовом формате с индикатором AM/PM (до полудня/ после полудня). DS1307 содержит встроенную схему контроля уровня основного источника питания и при его недопустимом значении автоматически переключается к резервной батареи.
Датчик DS18B20 — цифровой термометр с программируемым разрешением, от 9 до 12–bit, которое может сохраняться в EEPROM памяти прибора. DS18B20 обменивается данными по 1-Wire шине и при этом может быть как единственным устройством на линии, так и работать в группе. Все процессы на шине управляются центральным микропроцессором.
Диапазон измерений от –55°C до +125°C и точностью 0.5°C в диапазоне от –10°C до +85°C. В дополнение, DS18B20 может питаться напряжением линии данных (“parasite power”), при отсутствии внешнего источника напряжения.
Индикация реализована на семисегментном LED-дисплее с общим анодом. Принципиальная схема часов-термометра показана на рисунке.
Часы-термометр. Принципиальная схема
При кратковременном нажатии кнопки S1 начинают поочередно мигать разряды для осуществления настройки времени и даты. Для этого используем кнопки S2 и S3 («+» и «-» соответственно). При нажатии кнопки S3 на табло высвечивается температура окружающей среды.
Часы-термометр. Индикация времени
Таким образом в нормальном режиме прибор отображает поочередно время и дату. А при нажатии на кнопку S3 показывает температуру. В начале каждого часа часы подают кратковременный звуковой сигнал.
Точность часов в основном зависит от примененного кварца. У меня погрешность времени составляет около двух секунд в месяц (спешат).
Прибор «Часы-календарь-термометр на ATMega8» собран на двух печатных платах (см. фото).
Фьюзы для прошивки микроконтроллера:
Архив к проекту (печатные платы, прошивка, исходник):
[hidepost] Прошивка и печатные платы;
Исходник [/hidepost]
meandr.org
Привет всем читателям и почитателям сайта Радиосхемы! Сегодня хочу поделиться с вами очередной простенькой конструкцией «Часы-термометр». Немного предыстории: вечером очень плохо видно показания уличного термометра, чтобы разглядеть положение стрелки, необходимо довольно долго вглядываться и иной раз пользоваться фонариком. Спустя определённое время мне это надоело и решил заменить прибор на электронный, который бы отображал информацию на светодиодных семи сегментных индикаторах. После чего бы не пришлось даже подходить к окну, чтоб узнать уличную температуру. Так как индикацию хорошо видно более чем с трёх метров. Схем данного устройства в сети полно, но я, как человек относящийся к семейству Радиолюбителей, решил собрать свою. Так как с недавних пор пытаюсь осваивать микроконтроллеры, то выбор пал на широко распространённый и дешёвый МК Atmega8. Далее была изготовлена плата по технологии ЛУТ, после чего уже приступил к программной части. Программа написана на языке Си с помощью среды разработки CodeVisionAVR.
В одном устройстве объединено две функции: собственно измерение температуры и времени (часы). Индикация производится попеременно, сменяясь через десять секунд. Для настройки часов используется две кнопки, аналогично простым китайским электронным часам: одна отвечает за выбор параметра, вторая за его изменение. Питается устройство от сети с помощью постоянного стабилизированного источника тока напряжением пять вольт (плата от зарядного устройства телефона).
Датчиком температуры является микросхема DS18B20. Так как в устройстве «Часы-термометр» нет своей батареи, при пропадании питания естественно показания будут сбиваться. И что бы это не явилось причиной какого-нибудь опоздания человека на жизненно важные дела, имеется интересная «фишка» — при подаче питания вместо времени на дисплее будут отображаться прочерки, пока не нажмёшь одну из двух кнопок настройки.
Корпусом самодельного измерителя температуры послужила подходящая коробочка от запонок. В неё была помещена сама плата часов-термометра и плата вытащенная из телефонного зарядника. Датчик DS18B20 сделан выносным и подсоединяется через разъём.
Все файлы проекта (схема, прошивка и исходник) прилагаются. По всем вопросам относительно проекта можно обращаться на форум. До новых встреч на страницах сайта Радиосхемы! С вами был Темыч (Артём Богатырь).
Форум
Обсудить статью ЧАСЫ-ТЕРМОМЕТР НА МИКРОКОНТРОЛЛЕРЕ ATMEGA8
radioskot.ru
Более четырех лет назад я собрал простые часы на ATmega8. Все это время они исправно работали и приносили пользу, особенно в темнее время суток. Но мне показалось, что такой микроконтроллер, как ATmega8 может делать намного больше, чем просто подсчитывать колебания кварца и выводить их в виде времени.
Захотел, чтобы новые часы информировали не только о текущем времени, но и о температуре в помещении, где они находятся. Задался поиском подобных схем в интернете, отталкиваясь от уже имеющихся комплектующих, а именно: микроконтроллер ATmega8 и светодиодный индикатор с общим катодом. Отличное решение нашлось на этой странице, которое предоставил пользователь Soir, за что ему большая благодарность.
Схема часов не сложная, плюс, я сделал в ней некоторые упрощения. Что получилось, я привожу ниже. Оригинальная и упрощенная схема, разведенная в Proteus, имеется в АРХИВЕ. В данном архиве приведены также прошивки ATmega8, дающие разный функционал часам, пример выставления фьюзов, полная инструкция по настройке часов и их возможностях, а так же разведенная печатная плата в формате *.lay6. Печатная плата разводилась мной под уже имеющийся корпус. В архиве представлены прошивки для индикаторов с общим анодом и катодом.
Хочу признать, что часы получились отлично. В часах есть будильник (как разовый, так и по дням недели), термометр. Для регулировки освещения индикатора в дневное и ночное время, могут использоваться как предустановки в часах, так и специальный датчик (фоторезистор). Есть возможность коррекции времени, если оно отстает или спешит; цифровая коррекция отображения температуры с градацией 0,1ºС.
Большим плюсом является наличие сохранения настроек в энергонезависимой памяти микроконтроллера. Помимо этого, применение микросхемы DS1307, в паре, с батарейкой, делают часы абсолютно энергонезависимыми. Батарейка выполняет дежурное питание часов. Теперь, сколько бы поставка электричества у Вас не обрывалась, при ее возобновлении, часы буду идти, без каких-либо изменений и отклонений, даже останется заведенным будильник(и).
В эстетическом плане, данные часы, также хороши. Есть более десяти видов визуальных эффектов смены отображения времени и температуры. Кстати, эти эффекты можно выбирать самостоятельно или выставить их отображение в случайном порядке.
best-chart.ru
Решил собрать часы для компьютерного стола на ATmega8. Минимум электронных компонентов. Тем более что все в наличии. Спасибо площадке AliExpress. В качестве индикатора применил 7-сегментный 4-х цифровой зеленый светодиодный индикатор размером 0.56″ с общим катодом. В схеме так же можно применить светодиодный индикатор с общим анодом для этого в контроллер ATmega8 необходимо будет записать соответствующую прошивку. Часы функциональные: 24 формат времени, будильник с возможностью настроить по дням недели, комнатный термометр. Так же есть ночной режим свечения индикаторов, звуковой сигнал каждый час — кроме ночного режима работы. Есть коррекция времени и температуры, очень полезная фишка так как часовой кварц и датчик температуры изначально могут иметь небольшую погрешность. Очень красивая анимация смены температуры и времени с поддержкой более 10 скинов, так сказать на любой вкус и с возможностью настройки отображения по времени.
Внешний вид:
Тактильные кнопки специально запаял высокие 17mm высотой, со временем планирую установить тонированное оргстекло перед дисплеем 0.56″. Часы в работе, отображение времени:
Часы в работе, отображение температуры. Есть возможность настроить отображение анимации от 5 сек до 50 сек:
Печатные платы в количесте 2-х штук разведены в программе Sprint Layout 6.0 на одностороннем текстолите и изготовлены с помощью лут технологии.
Первая плата с индикатором и тактильными кнопками. Внизу под светодиодным дисплеем запаян зеленый светодиод. Сигнализирует если включен будильник:
Обратная сторона платы, smd резисторы на 680ом и 2.2ком, плюс соединительные разъемы:
Вторая плата. Сам контроллер Atmega8, часовой кварц на 32768 гц, датчик температуры Dallas DS18B20, чип реального времени DS1307, бузер, соединительные разъемы, разъем питания:
Обратная сторона. В качестве стабилизатора напряжения на +5 вольт применен smd стабилизатор 78m05 с минимальной обвязкой электронных деталей. Батарея CR2032 в случаи пропадания напряжения, питает чип DS1307 — при этом время и насторойки не збиваются:
Блок питания для часов использую от старого модема zyxel на 9 вольт.
Скачать с Яндекс Диска прошивку и схему
AliExpress дешевые чипы реального времени DS1307
AliExpress дешевые датчики температуры DS18B20
AliExpress дешевые микроконтроллеры ATMEGA8-16PU
migsat.ru
В часах есть возможность последовательно показывать 4 режима, для которых выбирается один из десяти форматов отображения и время его показа.
Кнопка F — выход из режима. Выбор 3 основных режимов.
Все режимы, кроме нулевого и режима таймера, имеют завершение по времени. Если не было нажатий более 30 секунд, устанавливается режим ноль.
Режим CALLS
Режим SETUP.
Режим PORT.
Режим часы.
Режим Уст SEE.
Режим УSt Буd. Установки будильника.
Режим DS18B20.
Режим DEFAULT.
Действия в нулевом режиме. F — выбор режима.
Схема clock.spl (7 Kb)
lay.rar (12 Kb) Программа написана на си в WinAvr. При прошивке мк установите биты CKSEL3..0 в 0011 (внутренний RC генератор 4 Meg ).
Запрограммировать бит CKOPT (подключение внутренних конденсаторов).
посмотреть для PonyProg.
Затем прошить EEPROM, или сбросить основные переменные в программе таким образом -
SETUP -> DEFAULT -> SET. |
www.radiokot.ru
Более четырех лет назад я собрал простые часы на ATmega8. Все это время они исправно работали и приносили пользу, особенно в темнее время суток. Но мне показалось, что такой микроконтроллер, как ATmega8 может делать намного больше, чем просто подсчитывать колебания кварца и выводить их в виде времени.
Захотел, чтобы новые часы информировали не только о текущем времени, но и о температуре в помещении, где они находятся. Задался поиском подобных схем в интернете, отталкиваясь от уже имеющихся комплектующих, а именно: микроконтроллер ATmega8 и светодиодный индикатор с общим катодом. Отличное решение нашлось на этой странице, которое предоставил пользователь Soir, за что ему большая благодарность.
Схема часов не сложная, плюс, я сделал в ней некоторые упрощения. Что получилось, я привожу ниже. Оригинальная и упрощенная схема, разведенная в Proteus, имеется в АРХИВЕ. В данном архиве приведены также прошивки ATmega8, дающие разный функционал часам, пример выставления фьюзов, полная инструкция по настройке часов и их возможностях, а так же разведенная печатная плата в формате *.lay6. Печатная плата разводилась мной под уже имеющийся корпус. В архиве представлены прошивки для индикаторов с общим анодом и катодом.
Хочу признать, что часы получились отлично. В часах есть будильник (как разовый, так и по дням недели), термометр. Для регулировки освещения индикатора в дневное и ночное время, могут использоваться как предустановки в часах, так и специальный датчик (фоторезистор). Есть возможность коррекции времени, если оно отстает или спешит; цифровая коррекция отображения температуры с градацией 0,1ºС.
Большим плюсом является наличие сохранения настроек в энергонезависимой памяти микроконтроллера. Помимо этого, применение микросхемы DS1307, в паре, с батарейкой, делают часы абсолютно энергонезависимыми. Батарейка выполняет дежурное питание часов. Теперь, сколько бы поставка электричества у Вас не обрывалась, при ее возобновлении, часы буду идти, без каких-либо изменений и отклонений, даже останется заведенным будильник(и).
В эстетическом плане, данные часы, также хороши. Есть более десяти видов визуальных эффектов смены отображения времени и температуры. Кстати, эти эффекты можно выбирать самостоятельно или выставить их отображение в случайном порядке.
best-chart.ru
Ага 🙂 опять часы.
В часах есть возможность последовательно показывать 8 режимов, для которых выбирается один из десяти форматов отображения и время его показа.
Кнопка F — выход из режима. Выбор 3 основных режимов. Все режимы, кроме нулевого и режима таймера, имеют завершение по времени. Если не было нажатий более 30 секунд, устанавливается режим ноль.
Режим CALLS
Режим быстрой настройки термостата.
Режим SETUP.
Режим часы.
Режим PORT.
Режим настроек термостата. Режим Уст SEE.
Режим УSt Буd. Установки будильника.
Режим DS18B20.
Режим Light.
Режим Сигнал.
Режим Сброс настроек.
Действия в нулевом режиме. F — выбор режима. Каждый час, на одну секунду, устанавливается вывод PB2(16). Для экономии, в режиме питания от батарей запрещается отсрочка сигнала. Схема. Из схемы можно исключить конденсаторы к кварцу, если запрограммировать fuse бит CKOPT.
При прошивке мк установите биты CKSEL3..0 в 0011 (внутренний RC генератор 4 Meg ).
посмотреть для PonyProg.
Cбросить основные переменные в программе —
SETUP -> СБРОС НАС. -> SET. |
www.radiokot.ru