Универсальный внешний накопитель для всех iOS-устройств, совместим с PC/Mac, Android
Header Banner
8 800 100 5771 | +7 495 540 4266
c 9:00 до 24:00 пн-пт | c 10:00 до 18:00 сб
0 Comments

Содержание

Простейшие электронные часы своими руками. Многофункциональные наручные LED часы. Встроенный RC-генератор процессора

Предлагаю для повторения схему простых электронных часов с будильником, выполненные на типа PIC16F628A. Большим плюсом данных часов является светодиодный индикатор типа АЛС, для отображения времени. Лично мне порядком надоели всевозможные ЖКИ и хочется иметь возможность видеть время из любой точки комнаты в том числе в темноте, а не только прямо с хорошим освещением. Схема содержит минимум деталей и имеет отличную повторяемость. Часы испытаны на протяжении месяца, что показало их надежность и работоспособность. Думаю из всех схем в интернете, эта наиболее простая в сборке и запуске.

Принципиальная схема электронных часов с будильником на микроконтроллере:


Как видно из схемы часов, является единственной микросхемой, используемой в данном устройстве. Для задания тактовой частоты используется кварцевый резонатор на 4 МГц. Для отображения времени использованы индикаторы красного цвета с общим анодом, каждый индикатор состоит из двух цифр с десятичными точками. В случае использования пьезоизлучателя, конденсатор С1 – 100мкФ можно не ставить.

Можно применить любые индикаторы с общим анодом, лишь бы каждая цифра имела собственный анод. Чтоб электронные часы были хорошо видны в темноте и с большой дистанции – старайтесь выбрать АЛС-ки чем покрупнее.


Индикация в часах осуществляется динамически. В данный конкретный момент времени отображается лишь одна цифра, что позволяет значительно снизить потребление тока. Аноды каждой цифры управляются микроконтроллером PIC16F628A. Сегменты всех четырех цифр соединены вместе и через токоограничивающие резисторы R1 … R8 подключены к выводам порта МК. Поскольку засвечивание индикатора происходит очень быстро, мерцание цифр становится незаметным.


Для настройки минут, часов и будильника – используются кнопки без фиксации.

В качестве выхода для сигнала будильника используется вывод 10, а в качестве усилителя – каскад на транзисторах VT1,2. Звукоизлучателем является пьезоэлемент типа ЗП. Для улучшения громкости вместо него можно поставить небольшой динамик.


Питаются часы от стабилизированного источника напряжением 5В. Можно и от батареек. В часах реализовано 9 режимов индикации. Переход по режимам осуществляется кнопками “+” и “-“. Перед выводом на индикацию самих показаний, на индикаторы выводится короткая подсказка названия режима. Длительность вывода подсказки – одна секунда.


Кнопкой “Коррекция” часы – будильник переводятся в режим настроек. При этом кратковременная подсказка выводится на пол секунды, после чего корректируемое значение начинает мигать. Коррекция показаний осуществляется кнопками “+” и “-“. При длительном нажатии на кнопку, включается режим автоповтора, с заданной частотой. Все значения, кроме часов, минут и секунд, записываются в EEPROM и восстанавливаются после выключения – включении питания.


Если в течение нескольких секунд ни одна из кнопок не нажата, то электронные часы переходят в режим отображения времени. Нажатием на кнопку “Вкл/Выкл” включается или выключается будильник, это действие подтверждается коротким звуком. При включенном будильнике светится точка в младшем разряде индикатора. Думал куда бы пристроить часы на кухне, и решил вмонтировать их прямо в газовую плиту:) Материал прислал in_sane.

Обсудить статью ЭЛЕКТРОННЫЕ ЧАСЫ БУДИЛЬНИК

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

Конструкция собрана на микроконтроллере и часов реального времени DS1307 . В качестве индикатора текущего времени использован четырехразрядный семисегментный светодиодный индикатор (ультраяркий, голубого цвета свечения, что неплохо смотрится в темное время, и, заодно, часы играют роль ночника).

Управление часами происходит двумя кнопками. Благодаря использованию микросхемы часов реального времени DS1307, алгоритм программы получился довольно простым. Общение микроконтроллера с часами реального времени происходит по шине I2C, и организованно программным путем.

Схема часов:

К сожалению, в схеме есть ошибка:
— выводы МК к базам транзисторов нужно подключать:
РВ0 к Т4, РВ1 к Т3, РВ2 к Т2, РВ3 к Т1
или поменять подключение коллекторов транзисторов к разрядам индикатора:
Т1 к DP1 ….. Т4 к DP4

Детали, используемые в схеме часов:

♦ микроконтроллер ATTiny26:

♦ часы реального времени DS1307:

♦ 4-разрядный семисегментный светодиодный индикатор – FYQ-5641UB -21 с общим катодом (ультраяркий, голубого цвета свечения):


♦ кварц 32,768 кГц, с входной емкостью 12,5 пф (можно взять с материнской платы компьютера), от этого кварца зависит точность хода часов:

♦ все транзисторы — NPN-структуры, можно применить любые (КТ3102, КТ315 и их зарубежные аналоги), я применил ВС547С
♦ микросхемный стабилизатор напряжения типа 7805
♦ все резисторы мощностью 0,125 ватт
♦ полярные конденсаторы на рабочее напряжение не ниже напряжения питания
♦ резервное питание DS1307 – 3 вольтовый литиевый элемент CR2032

Для питания часов можно использовать любое ненужное зарядное устройство сотового телефона (в этом случае, если напряжение на выходе зарядного устройства в пределах 5 вольт ± 0,5 вольта, часть схемы — стабилизатор напряжения на микросхеме типа 7805, можно исключить)
Ток потребления устройством составляет — 30 мА.


Батарейку резервного питания часов DS1307 можно и не ставить, но тогда, при пропадании напряжения в сети, текущее время придется устанавливать заново.
Печатная плата устройства не приводится, конструкция была собрана в корпусе от неисправных механических часов. Светодиод (с частотой мигания 1 Гц, от вывода SQW DS1307) служит для разделения часов и минут на индикаторе.

Установки микроконтроллера заводские: тактовая частота — 1МГц, FUSE-биты трогать не надо.

Алгоритм работы часов (в Algorithm Builder):

1. Установка указателя стека
2. Настройка таймера Т0:
— частота СК/8
— прерывания по переполнению (при такой предустановленной частоте вызов прерывания происходит каждые 2 миллисекунды)
3. Инициализация портов (выводы РА0-6 и РВ0-3 настраиваются на выход, РА7 и РВ6 на вход)
4. Инициализация шины I2C (выводы РВ4 и РВ5)
5. Проверка 7-го бита (СН) нулевого регистра DS1307

6. Глобальное разрешение прерывания
7. Вход в цикл с проверкой нажатия кнопки

При первом включении, или повторном включении при отсутствии резервного питания DS307, происходит переход в первоначальную установку текущего времени. При этом: кнопка S1 – для установки времени, кнопка S2 – переход к следующему разряду. Установленное время – часы и минуты записываются в DS1307 (секунды устанавливаются в ноль), а также вывод SQW/OUT (7-й вывод) настраивается на генерацию прямоугольных импульсов с частотой 1 Гц.
При нажатии кнопки S2 (S4 — в программе) происходит глобальный запрет прерываний, программа переходит в подпрограмму коррекции времени. При этом, кнопками S1 и S2 устанавливаются десятки и единицы минут, затем, с 0 секунд, нажатием кнопки S2 происходит запись уточненного времени в DS1307, разрешение глобального прерывания и возвращение в основную программу.

Часы показали хорошую точность хода, уход времени за месяц — 3 секунды.
Для улучшения точности хода, кварц рекомендуется подключать к DS1307, как указано в даташите:

Программа написана в среде «Algorithm Builder».
Вы можете, на примере программы часов, ознакомиться с алгоритмом общения микроконтроллера с другими устройствами по шине I2C (в алгоритме подробно прокомментирована каждая строчка).

Фотография собранного устройства и печатная плата в формате.lay от читателя сайта Анатолия Пильгук, за что ему огромное спасибо!

В устройстве применены: Транзисторы — СМД ВС847 и ЧИП резисторы

Приложения к статье:

(42,9 KiB, 3 038 hits)

(6,3 KiB, 4 058 hits)

(3,1 KiB, 2 500 hits)

(312,1 KiB, 5 833 hits)

Второй вариант программы часов в АБ (для тех у кого нескачивается верхний)

(11,4 KiB, 1 842 hits)

Привет, geektimes! В первой части статьи были рассмотрены принципы получения точного времени на самодельных часах. Пойдем дальше, и рассмотрим, как и на чем это время лучше выводить.

Итак, у нас есть некая платформа (Arduino, Raspberry, PIC/AVR/STM-контроллер, etc), и стоит задача подключить к нему некую индикацию. Есть множество вариантов, которые мы и рассмотрим.

Сегментная индикация

Тут все просто. Сегментный индикатор состоит из обычных светодиодов, которые банально подключаются к микроконтроллеру через гасящие резисторы.

Осторожно, траффик!

Плюсы: простота конструкции, хорошие углы обзора, невысокая цена.
Минус: количество отображаемой информации ограничено.
Конструкции индикаторов бывают двух видов, с общим катодом и общим анодом, внутри это выглядит примерно так (схема с сайта производителя).

Есть 1001 статья как подключить светодиод к микроконтроллеру, гугл в помощь. Сложности начинаются тогда, когда мы захотим сделать большие часы – ведь смотреть на мелкий индикатор не особо удобно. Тогда нам нужны такие индикаторы (фото с eBay):

Они питаются от 12В, и напрямую от микроконтроллера просто не заработают. Тут нам в помощь приходит микросхема CD4511 , как раз для этого предназначенная. Она не только преобразует данные с 4-битной линии в нужные цифры, но и содержит встроенный транзисторный ключ для подачи напряжения на индикатор. Таким образом, нам в схеме нужно будет иметь «силовое» напряжение в 9-12В, и отдельный понижающий преобразователь (например L7805) для питания «логики» схемы.

Матричные индикаторы

По сути, это те же светодиоды, только в виде матрицы 8х8. Фото с eBay:

Продаются на eBay в виде одиночных модулей либо готовых блоков, например по 4 штуки. Управление ими весьма просто – на модулях уже распаяна микросхема MAX7219 , обеспечивающая их работу и подключение к микроконтроллеру с помощью всего лишь 5 проводов. Для Arduino есть много библиотек, желающие могут посмотреть код.
Плюсы: невысокая цена, хорошие углы обзора и яркость.
Минус: невысокое разрешение. Но для задачи вывода времени вполне достаточно.

ЖК-индикаторы

ЖК-индикаторы бывают графические и текстовые.

Графические дороже, однако позволяют выводить более разнообразную информацию (например график атмосферного давления). Текстовые дешевле, и с ними проще работать, они также позволяют выводить псевдографику – есть возможность загружать в дисплей пользовательские символы.

Работать с ЖК-индикатором из кода несложно, но есть определенный минус – индикатор требует много управляющих линий (от 7 до 12) от микроконтроллера, что неудобно. Поэтому китайцы придумали совместить ЖК-индикатор с i2c-контроллером, получилось в итоге очень удобно – для подключения достаточно всего 4х проводов (фото с eBay).


ЖК-индикаторы достаточно дешевые (если брать на еБее), крупные, их просто подключать, и можно выводить разнообразную информацию. Единственный минус это не очень большие углы обзора.

OLED-индикаторы

Являются улучшенным продолжением предыдущего варианта. Варьируются от маленьких и дешевых с диагональю 1.1″, до больших и дорогих. Фото с eBay.

Собственно, хороши всем кроме цены. Что касается мелких индикаторов, размером 0.9-1.1″, то (кроме изучения работы с i2c) какое-то практическое применение им найти сложно.

Газоразрядные индикаторы (ИН-14, ИН-18)

Эти индикаторы сейчас весьма популярны, видимо из-за «теплого лампового звука света» и оригинальности конструкции.


(фото с сайта nocrotec.com)

Схема их подключения несколько сложнее, т.к. эти индикаторы для зажигания используют напряжение в 170В. Преобразователь из 12В=>180В может быть сделан на микросхеме MAX771 . Для подачи напряжения на индикаторы используется советская микросхема К155ИД1 , которая специально для этого и была создана. Цена вопроса при самостоятельном изготовлении: около 500р за каждый индикатор и 100р за К155ИД1, все остальные детали, как писали в старых журналах, «дефицитными не являются». Основная сложность тут в том, что и ИН-хх, и К155ИД1, давно сняты с производства, и купить их можно разве что на радиорынках или в немногих специализированных магазинах.

С индикацией мы более-менее разобрались, осталось решить, какую аппаратную платформу лучше использовать. Тут есть несколько вариантов (самодельные я не рассматриваю, т.к. тем кто умеет развести плату и припаять процессор, эта статья не нужна).

Arduino

Самый простой вариант для начинающих. Готовая плата стоит недорого (около 10$ на eBay с бесплатной доставкой), имеет все необходимые разъемы для программирования. Фото с eBay:

Под Arduino есть огромное количество разных библиотек (например для тех же ЖК-экранов, модулей реального времени), Arduino аппаратно совместима с различными дополнительными модулями.
Главный минус: сложность отладки (только через консоль последовательного порта) и довольно-таки слабый по современным меркам процессор (2КБайт RAM и 16МГц).
Главный плюс: можно сделать много чего, практически не заморачиваясь с пайкой, покупкой программатора и разводкой плат, модули достаточно соединить друг с другом.

32-разрядные процессоры STM

Для тех кто захочет что-то помощнее, есть готовые платы с процессорами STM, например плата с STM32F103RBT6 и TFT-экраном. Фото с eBay:

Здесь мы уже имеем полноценную отладку в полноценной IDE (из всех разных мне больше понравилась Coocox IDE), однако понадобится отдельный программатор-отладчик ST-LINK с разъемом JTAG (цена вопроса 20-40$ на eBay). Как вариант, можно купить отладочную плату STM32F4Discovery, на которой этот программатор уже встроен, и его можно использовать отдельно.

Raspberry PI

И наконец, для тех кто хочет полной интеграции с современным миром, есть одноплатные компьютеры с Linux, всем уже наверное известные Raspberry PI. Фото с eBay:

Это полноценный компьютер с Linux, гигабайтом RAM и 4х-ядерным процессором на борту. С краю платы выведена панель из 40 пинов, позволяющая подключать различную периферию (пины доступны из кода, например на Python, не говоря о C/C++), есть также стандартный USB в виде 4х разъемов (можно подключить WiFi). Так же есть стандартный HDMI.
Мощности платы хватит к примеру, не только чтобы выводить время, но и чтобы держать HTTP-сервер для настройки параметров через web-интерфейс, подгружать прогноз погоды через интернет, и так далее. В общем, простор для полета фантазии большой.

С Raspberry (и процессорами STM32) есть одна единственная сложность – ее пины используют 3-вольтовую логику, а большинство внешних устройств (например ЖК-экраны) работают «по старинке» от 5В. Можно конечно подключить и так, в принципе заработает, но это не совсем правильный метод, да и испортить плату за 50$ как-то жалко. Правильный способ – использовать «logic level converter», который на eBay стоит всего 1-2$.
Фото с eBay:

Теперь достаточно подключить наше устройство через такой модуль, и все параметры будут согласованы.

ESP8266

Способ скорее экзотический, но довольно-таки перспективный в силу компактности и дешевизны решения. За совсем небольшие деньги (около 4-5$ на eBay) можно купить модуль ESP8266, содержащий процессор и WiFi на борту.
Фото с eBay:

Изначально такие модули предназначались как WiFi-мост для обмена по serial-порту, однако энтузиастами было написано множество альтернативных прошивок, позволяющих работать с датчиками, i2c-устройствами, PWM и пр. Гипотетически вполне возможно получать время от NTP-сервера и выводить его по i2c на дисплей. Для тех кто хочет подключить много различной периферии, есть специальные платы NodeMCU с большим числом выводов, цена вопроса около 500р (разумеется на eBay):

Единственный минус – ESP8266 имеет очень мало памяти RAM (в зависимости от прошивки, от 1 до 32КБайт), но задача от этого становится даже интересней. Модули ESP8266 используют 3-вольтовую логику, так что вышеприведенный конвертор уровней тут также пригодится.

На этом вводный экскурс в самодельную электронику можно закончить, автор желает всем удачных экспериментов.

Я в итоге остановился на использовании Raspberry PI с текстовым индикатором, настроенным на работу с псевдографикой (что вышло дешевле чем графический экран той же диагонали). Сфоткал экран настольных часов во время написания этой статьи.

Часы выводят точное время, взятое из Интернета, и погоду которая обновляется с Яндекса, все это написано на Python, и вполне работает уже несколько месяцев. Параллельно на часах запущен FTP-сервер, что позволяет (вкупе с пробросом портов на роутере) обновить на них прошивку не только из дома, но и из любого места где есть Интернет. Как бонус, ресурсов Raspberry в принципе хватит и для подключения камеры и/или микрофона с возможностью удаленного наблюдения за квартирой, или для управлением различными модулями/реле/датчиками. Можно добавить всякие «плюшки», типа светодиодной индикации о пришедшей почте, и так далее.

PS: Почему eBay?
Как можно было видеть, для всех девайсов приводились цены или фото с ебея. Почему так? К сожалению, наши магазины часто живут по принципу «за 1$ купил, за 3$ продал, на эти 2 процента и живу». В качестве простого примера, Arduino Uno R3 стоит (на момент написания статьи) 3600р в Петербурге, и 350р на eBay с бесплатной доставкой из Китая. Разница действительно на порядок, безо всяких литературных преувеличений. Да, придется подождать месяц чтобы забрать посылку на почте, но такая разница в цене думаю, того стоит. Но впрочем, если кому-то надо прямо сейчас и срочно, то наверно и в местных магазинах есть выбор, тут каждый решает сам.

Для тех, кто хоть немного разбирается в микроконтроллерах, а также хочет создать несложное и полезное устройство для дома, нет ничего лучше сборки с LED индикаторами. Такая вещь может украсить вашу комнату, а может пойти на уникальный подарок, сделанный своими руками, от чего приобретёт дополнительную ценность. Схема работает как часы и как термометр – режимы переключаются кнопкой или автоматически.

Микроконтроллер PIC18F25K22 берёт на себя всю обработку данных и отсчёт времени, а на долю ULN2803A остаётся согласование его выходов со светодиодным индикатором. Небольшая микросхема DS1302 работает как таймер точных секундных сигналов, частота её стабилизирована стандартным кварцевым резонатором 32768 Гц. Это несколько усложняет конструкцию, зато вам не придётся постоянно подстраивать и корректировать время, которое будет неизбежно запаздывать или спешить, если обойтись случайным ненастроенным кварцевым резонатором на несколько МГц. Подобные часы скорее простая игрушка, чем качественный точный хронометр.

При необходимости, датчики температуры могут быть расположены далеко от основного блока – они соединяются с ним трёхпроводным кабелем. В нашем случае один температурный датчик установлен в блок, а другой расположен снаружи, на кабеле длинной около 50 см. Когда пробовали кабель 5 м, то тоже прекрасно функционировало.

Дисплей часов изготовлен из четырех больших светодиодных цифровых индикаторов. Первоначально они были с общим катодом, но изменены на общий анод в финальной версии. Вы можете ставить любые другие, потом просто подберёте токоограничительные резисторы R1-R7 исходя из требуемой яркости. Можно было разместить его на общей, с электронной частью часов, плате, но так гораздо универсальнее – вдруг вы захотите поставить очень большой LED индикатор, чтоб их было видно на дальнем расстоянии. Пример такой конструкции уличных часов есть тут.

Сама электроника запускается от 5 В, но для яркого свечения светодиодов необходимо использовать 12 В. Из сети, питание поступает через понижающий трансформатор адаптер на стабилизатор 7805 , который образует напряжение строго 5 В. Обратите внимание на небольшую зелёную цилиндрическую батарейку – она служит источником резервного питания, на случай пропадания сети 220 В. Её не обязательно брать на 5 В – достаточно литий-ионного или Ni-MH аккумулятора на 3,6 вольта.

Для корпуса можно задействовать различные материалы – дерево, пластик, металл, либо встроить всю конструкция самодельных часов в готовый промышленный, например от мультиметра, тюнера, радиоприёмника и так далее. Мы сделали из оргстекла, потому что оно легко обрабатывается, позволяет увидеть внутренности, чтоб все видели – эти часы собраны своими руками. И, главное, оно было в наличии:)

Здесь вы сможете найти все необходимые детали предлагаемой конструкции самодельных цифровых часов, в том числе схему, топологию печатной платы, прошивки PIC и

Светодиодные простые часы можно сделать на дешёвом контроллере PIC16F628A. Конечно, в магазинах полно различных электронных часов, но по функциям у них может или нехватать термометра, или будильника, или они не светятся в темноте. Да и вообще, иногда прото хочется что-то спаять сам, а не покупать готовое. Чтобы увеличить рисунок схемы – клац.

В предлагаемых часах есть календарь. В нём два варианта отображения даты – месяц цифрой или слогом, всё это настрайвается после ввода даты переключением дальше кнопкой S1 во время отображения нужного параметра, термометр. есть прошивки под разные датчики. Смотрите устройство внутри корпуса:


Все знают, что кварцевые резонаторы не идеальные по точности, и в течение нескольких недель набегает погрешность. Для борьбы с этим делом, в часах предусмотрена корекция хода, которая устанавливается параметрами SH и SL . Подробнее:

SH=42 и SL=40 – это вперёд на 5 минут в сутки;
SH=46 и SL=40 – это назад на 3 минуты в сутки;
SH=40 и SL=40 – это вперёд на 2 минуты в сутки;
SH=45 и SL=40 – это назад на 1 минуту в сутки;
SH=44 и SL=С0 – это вперёд на 1 минуту в сутки;
SH=45 и SL=00 – это корекция отключена.

Таким образом можно добится идеальной точности. Хотя придётся несколько раз погонять коррекцию, пока выставите идеально. А теперь наглядно показывается работа электронных часов:

температура 29градусов цельсия

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

Самодельные электронные часы, элементная база — часть 1, измерение времени / Хабр

Наверное, каждый гик, увлекающийся самодельной электроникой, рано или поздно приходит к идее сделать свои, уникальные, часы. Идея вполне неплоха, разберемся как и на чем их лучше сделать. В качестве отправной точки будем считать, что человек умеет программировать микроконтроллеры, понимает как переслать 2 байта по i2c или serial-порту, и может спаять вместе несколько проводов. В принципе, этого достаточно.

Понятно, что ключевая функция часов — измерение времени (кто бы подумал, да?). И делать это желательно максимально точно, здесь есть несколько вариантов и подводных камней.

Итак, какие доступные в «железе» способы измерения времени мы можем использовать?

Встроенный RC-генератор процессора

Самая простая идея, которая может придти в голову — это просто настроить программный таймер, и им отсчитывать секунды. Так вот, эта идея никуда не годится. Часы-то работать конечно будут, только вот точность встроенного генератора никак не регламентируется, и может «плавать» в пределах 10% от номинала. Вряд ли кому-то нужны часы, уходящие в месяц на 15 минут.

Модуль реального времени DS1307

Более правильный вариант, он же использующийся в большинстве «народных» изделий — это часы реального времени. Микросхема обменивается с микроконтроллером по I2C, требует минимума обвязки (кварц и пара резисторов). Цена вопроса около 100р за микросхему, или около 1$ на ебее за готовую плату с микросхемой, модулем памяти и разъемом для батарейки.

Схема из даташита:

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

Казалось бы, все хорошо, если бы не одна проблема — невысокая точность. Примерная точность часовых кварцев — 20-30ppm. Обозначение ppm — parts per million, показывает число миллионных долей. Казалось бы, 20миллионных — это супер, однако для частоты в 32768Гц получается 20*32768/1000000 = ±0,65536Гц, т.е. уже полгерца. Путем несложных подсчетов видно, что генератор с такой разницей за сутки «натикает» лишних (или недостающих) 56тыс тактов, что соответствует 2 секундам в день. Кварцы бывают разные, некоторые пользователи писали и об ошибке в 5 секунд в день. Как-то не очень точно — за месяц такие часы уйдут как минимум, на минуту. Это уже приличная разница, заметная невооруженным глазом (когда любимый сериал бабушки начинается в 11.00, а часы показывают 11.05, разработчику таких часов перед родственниками будет неудобно).

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

Модуль реального времени DS3231

Мы не первые, кто задался вопросом точности, и компания Dallas пойдя навстречу пожеланиям, выпустила более совершенный модуль — DS3231. Он называется «Extremely Accurate Real Time Clock», имеет встроенный генератор с температурной коррекцией. Точность в 10 раз выше, и составляет 2ppm. Цена вопроса чуть повыше, но корпус микросхемы рассчитан под SMD-монтаж, паять не так удобно, зато можно купить на ебее готовую плату.


(фото с сайта продавца)

Точность в 6 секунд в месяц, это уже неплохой результат. Но мы пойдем дальше — в идеале, часы в 21 веке вообще не нужно подстраивать.

Радиомодуль DCF-77

Метод скорее экзотический, но для полноты картины его нельзя не упомянуть. Немногие знают, но сигналы точного времени передаются по радио еще с 70х годов. Передатчик DCF-77 расположен в Германии недалеко от Франкфурта, и на СДВ-частоте 77.5КГц передаются метки точного времени (да, у них уже 20 лет назад были настенные и настольные часы, которые не надо подстраивать).

Способ хорош тем, что схема имеет малое энергопотребление, так что сейчас производятся даже наручные часы с такой технологией. Готовую плату приема DCF-77 можно купить на ebay, цена вопроса 20$.

Многие часы и метеостанции имеют возможность приема DCF-77, проблема лишь в том, что до России сигнал практически не доходит. Карта покрытия с Википедии:

Как можно видеть, лишь Москва и Питер находятся на границе зоны приема. По отзывам владельцев, лишь иногда сигнал удается принять, что для практического применения конечно, не годится.

GPS-модуль

Если часы будут стоять недалеко от окна, то вполне реальный метод получения точного времени — GPS-модуль. Эти модули можно недорого купить на ebay (цена вопроса 10-15$). Например, Ublox NEO-6M, подключается напрямую к serial-пинам процессора, и выдает строки NMEA на скорости 9600.

Данные приходят примерно в таком формате ” $GPRMC,040302.663,A,3939.7,N,10506.6,W,0.27,358.86,200804,,*1A”, и распарсить их даже для слабой Arduino труда не составляет. Патриоты кстати, могут приобрести более дорогой модуль Ublox NEO-7N, поддерживающий (по отзывам) как GPS так и «Глонасс».

Очевидно, что про разные часовые пояса GPS-модуль ничего не знает, так что их вычисление и смену летнего/зимнего времени, разработчику придется продумать самому. Другой минус использования GPS — относительно высокое энергопотребление (впрочем, некоторые модули можно отдельными командами переводить в «спящий режим»).

Wi-Fi

И наконец, последний (и самый очевидный на сегодняшний момент), способ получения точного времени — это брать его из Интернета. Здесь есть два подхода. Первый, и наиболее простой — использовать в качестве платы часов что-то типа Raspberry PI с Линуксом, тогда делать ничего не надо, все будет работать «из коробки». Если же хочется «экзотики» — то самым интересным вариантом является модуль esp8266.

Это недорогой (цена вопроса около 200р на ebay) WiFi-модуль может обмениваться с сервером по serial-порту процессора, при желании его можно также перепрошить (сторонних прошивок довольно много), и часть логики (например опрос сервера времени) сделать в самом модуле. Сторонними прошивками поддерживается куча всего, от Lua до C++, так что вариантов «размять мозги» вполне достаточно.

На этом тему измерения времени наверно можно закрыть. В следующей части мы поподробнее рассмотрим процессоры, и способы вывода времени.

15 красивых и простых идей деревянных часов своими руками в 2023 году

Автор: Рита Пайк |

Со всеми iPhone, Fitbits, микроволновыми печами, духовками и другими электронными устройствами, которые показывают нам время, многие из нас забывают, что существует такая вещь, как настенные часы.

Конечно, действительно хорошие часы могут дорого стоить. Или они просто не совсем подходят вашему пространству.

Так почему бы не сделать самому? Вы можете выбрать материалы, чтобы сделать именно тот размер, цвет и стиль, которые вы хотите, применив немного волшебства «сделай сам».

Гигантские деревянные часы с электрическим барабаном

Источник

Для домовладельцев с большими открытыми стенами идеально подойдут эти гигантские часы из восстановленного дерева, сделанные своими руками. Большие часы прекрасно смотрятся в любом деревенском, деревенском или уютном доме.

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

Инструкции довольно просты, но это проект для тех, у кого есть немного времени, чтобы собрать проект среднего уровня.

Через theDIYMommy

Настенные часы с цветными блоками

Источник

Это очень простые, уникальные и очень искусно выглядящие часы своими руками , которые может сделать каждый — независимо от того, насколько вы опытны или неопытны. Вам просто нужно купить несколько основных принадлежностей в магазине JoAnn’s, Walmart или где-то подобном — подумайте о часовом механизме и деревянных часах — и все готово.

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

Через SarahHearts

Деревянные часы для фермы на поддонах

Источник

Для красивого эффектного предмета для любого дома или офиса с деревенскими, деревенскими или другими простыми деревянными произведениями искусства и схемами это просто необходимо. Часы сделаны из переработанной древесины поддонов – сходите в какой-нибудь переулок или в продуктовый магазин, если у вас ее еще нет, – и немного краски.

Стильные часы подходят практически для любого места, и практически каждый может их сделать, если у него есть доступ к лобзику и гвоздемету.

Через сбор и процветание

Переработанные винтажные часы-домино

Source

Идеально подходит для геймеров и любителей винтажа. Вы можете отправиться в некоторые винтажные магазины, секонд-хенды и комиссионные магазины, чтобы найти старые костяшки домино (подойдет любая цветовая гамма) и взять старую разделочную доску или тарелку на распродаже или в задней части шкафа.

С дрелью и небольшим количеством клея вы соберете часы менее чем за час, не считая времени на сушку.

Через Sadie Season Goods

Настольные часы для фермерского дома

Источник

Идеально подходит для ремесленника, у которого есть старая мебель в подвале и пустая стена. Вам понадобится старый круглый стол, немного краски и инструменты, чтобы создать эти гигантские часы в деревенском стиле. Это потрясающе простой вид.

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

Через Адирондак Девушка Сердцем

Спасенные ненужные часы

Источник

Когда вы слышите слово «хлам», вы, вероятно, представляете себе мусор, валяющийся вдоль дороги. Но в данном случае хлам — это прекрасные старые сокровища, найденные на блошином рынке, свалке или в старом сарае бабушки и дедушки.

Ищите уникальные металлические детали — старые номера, ключи, крючки, металлические корзины для цветов и т. д. — а также деревянные поддоны или доски для забора. Объедините эти элементы с некоторыми навыками трафарета, и у вас есть все, что нужно для этих очаровательных часов.

Через Funky Junk Interiors

Деревянные часы с римскими цифрами

Источник

Для тех, кто любит классический вид римских цифр, эти красивые часы в стиле кафе, безусловно, должны быть. Вам понадобится 24-дюймовый круглый деревянный брусок, который вы можете найти в Home Depot, Lowes, JoAnn’s и подобных магазинах.

Далее вам понадобится краска, настенные наклейки с римскими цифрами, инструменты и часовой механизм.

Это очень простые часы, которые даже люди, которые действительно не умеют работать, могут собрать вместе, прочитав простые инструкции.

Через Handmade-Haven

Голографические настенные часы

Источник

Если вы хотите сделать самодельные часы уникальным и забавным, почему бы не сделать голографические часы? Да – голографический. Вам понадобятся некоторые основные материалы для изготовления часов, такие как часовой механизм, деревянный круг для часов, немного краски, клей и наждачная бумага.

И потом, ключ ко всему этому: голографический автомобильный винил. Вы можете получить некоторые онлайн за очень небольшую сумму.

С помощью винила и этих простых инструкций вы быстро получите уникальные причудливые настенные часы.

Через студию DIY

Переделанные часы на поддонах

Источник

В последние годы поддоны стали очень популярным элементом вторичной переработки. Они используются многими производителями и транспортными компаниями как простой способ перемещения товаров, но очень часто пропадают зря.

Что ж, эти переделанные часы из поддонов помогают положить конец этим тратам, по одному поддону за раз.

И самое главное, это невероятно легко сделать!

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

Через Sugar Bee Crafts

Квадратные деревянные часы в деревенском стиле

Источник

Для простых настенных часов из состаренного дерева квадратные деревянные часы в деревенском стиле — потрясающий выбор. Вы можете использовать различные типы древесины, хотя они рекомендуют использовать недорогую древесину «низкого качества» для уникальных текстур, которых нет в более качественной древесине.

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

Через заветное блаженство

Часы на поддоне за 12 долларов

Источник

Эти часы выглядят удивительно элегантно и дорого для своей низкой цены. Паллетные часы за 12 долларов на самом деле требуют всего пару вещей с блошиного рынка или из подвала, хотя это означает, что вам повезет при покупках.

Возможно, вам придется подумать о покупках, прежде чем найти именно те часы, которые вам нужны — например, этот удивительный утюг Говарда Миллера, который использовали ребята из Little Bit of Paint, — чтобы удержать его в низком ценовом диапазоне. В противном случае вам просто понадобится немного дерева для поддонов, немного краски и несколько инструментов.

Через немного краски

Большие часы на паллете с трафаретом в деревенском стиле

Источник

Еще один красивый проект из дерева поддонов представлен вам в виде великолепных больших настенных часов с трафаретной отделкой.

Вам понадобится старый деревянный поддон, любимый вами трафарет, немного краски и основные инструменты. Но если у вас есть доступ ко всему этому, вы можете это сделать. Это настолько просто, что даже самые неопытные люди могут его сделать.

Будьте осторожны, это большие часы диаметром 31 дюйм.

Через пальцы фламинго

Часы для срезов дерева

Источник

Это для любителей дровяной печи. Особенно для тех, кто любит начинать практически с нуля и придумывать из этого что-то красивое и функциональное.

Вам понадобится кусок дерева любого типа и размера. И вам понадобится инструмент для выжигания по дереву, немного краски и часовой механизм.

После того, как вы соберете все необходимое, вы просто будете следовать этим простым и прямым инструкциям, чтобы собрать и раскрасить эти прекрасно простые настенные часы в деревенском стиле, которым позавидуют соседи.

Через DIY Beautify

Двухцветные современные деревянные часы

Источник

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

Чтобы создать это, вам нужно уметь обращаться с торцовочной пилой и фрезером. Если вы уже умеете пользоваться ими и умеете ими пользоваться, эти настенные часы будут проще простого. В противном случае, вы можете захотеть посетить Лоус или еще куда-нибудь, чтобы сделать для вас несколько нарезок, прежде чем вы начнете.

Через Дневники Woodshop

Красочные напольные деревянные часы

Источник

Если вы любите яркие, яркие цвета и уникальный дизайн, вам понравятся эти простые, но красочные деревянные часы, сделанные из подставок для растений и окрашенные акриловой краской.

Вам нужно будет посетить садовую секцию в Walmart или Lowes и взять несколько подставок для деревянных растений. Затем отправляйтесь в отдел декоративно-прикладного искусства за радужными оттенками краски. Затем поймайте часовой механизм.

Теперь вы пойдете домой, соберете все вместе, следуя этим простым инструкциям, и обнаружите радугу, ожидающую вас на внешней стене.

Через «Счастье самодельное»

Потрясающие настенные часы для всех

Независимо от того, являетесь ли вы высококвалифицированным мастером или новичком, по крайней мере несколько из этих красивых часов удовлетворят ваши потребности. Обязательно соберите все необходимое заранее, наберитесь терпения и дайте краске и клею полностью высохнуть, прежде чем переходить к дальнейшим шагам.

Пока вы ждете, пока вещи высохнут, выберите идеальное место для ваших новых часов. Подумайте и о творческих местах, которые не обязательно являются нормой. Стиль часов, который вы выберете, может стать идеальным элементом декора для пространства, о котором вы даже не думали раньше.

Подписывайтесь на нашу новостную рассылку Получайте советы и идеи для творчества прямо на свой почтовый ящик.

Цифровые кварцевые часы с нуля | Эрик ван Зийст

После 20 с лишним лет программирования я хотел получить некоторое представление об электронике, которое сделало бы мою карьеру возможной.

Я построил основные отдельные логические элементы с транзисторами на макетной плате, но для создания чего-либо значимого мне нужно было их множество, поэтому я купил несколько случайных наборов логических микросхем на Amazon, которые познакомили меня с серией 7400 и концепцией. спецификаций.

Довольно случайный набор логических чипов 74xx CMOS

После нескольких простых проектов мне захотелось построить что-то более полезное: кварцевые часы со светодиодным дисплеем.

Практичным способом создания часов было бы подключение 7-сегментных светодиодных дисплеев к Arduino или Raspberry Pi и написание нескольких строк кода для управления дисплеями. Однако для этого проекта я хотел использовать только базовые логические элементы и не использовать код.

Я начал с пары 7-сегментных светодиодных дисплеев. Обычно они имеют отдельные контакты для каждого светодиода и общий катод или анод. Чтобы отобразить число, вам просто нужно выяснить, какие светодиоды включить.

7-сегментный дисплей с общим катодом

Чтобы отобразить число 5, вы должны вывести высокие линии a, c, d, f и g. Номер 1 будет b и c. Для жесткого подключения шаблона для каждого числа требуется много проводов и логических элементов, поэтому были разработаны специализированные ИС, такие как 74HC4511, которая принимает 4-битное двоичное число (например, 0101 для 5) на своих 4 входных линиях D, C, B и A, и переводит соответствующие выходные линии в высокий уровень (в данном случае a, c, d, f и g).

74HC4511: BCD для декодера 7-сегментного дисплея

Эта микросхема поддерживает только цифры от 0 до 9а не истинная ширина его 4-битного ввода. Любой двоичный ввод больше 9 приводит к пустому отображению. Например, 1111 (15) не дает шестнадцатеричной буквы «F».

Это усеченное использование только младших 10 перестановок 4-битного двоичного числа известно как двоично-десятичное число или BCD.

Теперь, когда мы можем отображать числа от 0 до 9 с помощью BCD, мы можем подключить двоичный счетчик пульсаций ко входу 4511. Двоичный счетчик создается путем последовательного соединения нескольких триггеров, каждый из которых делит частоту своего входного тактового сигнала на два.

Это работает путем соединения инвертированного выхода триггера D-типа с тактовой частотой обратно с его входом.

D-триггер в качестве делителя частоты (www.electronics-tutorials.ws)

Соединяя n из них последовательно, мы получаем n -битный двоичный счетчик пульсаций. Примером может служить микросхема 74HC393, которая содержит два отдельных 4-битных счетчика пульсаций, каждый из которых считает от 0 до 15.

3-битный счетчик пульсаций (www.electronics-tutorials.ws), а не 15, поэтому я использовал 74HC390, который можно подключить для обеспечения 2 независимых счетчиков BCD.

На самом деле HC390 содержит этапы деления на 2 и деления на 5, каждый со своими входными тактовыми импульсами (CP0 и CP1). Подключив выход деления на 2 (Q0) к часам каскада деления на 5 (CP1), мы получим счетчик 0–9. HC390 содержит 2 таких контура.

Чтобы первый счетчик обеспечивал «перенос» тактового импульса на второй, когда он возвращается от 9 к 0, нам нужно добавить некоторую схему, которая ищет шаблон 1001 (десятичное число 9). ) на выходных линиях BCD первого счетчика. Нам действительно нужно только искать 1 в строках A и D (Q0 и Q3 на HC390), поскольку 9 — единственное значение, которое соответствует этому.

Мы пропускаем эти две линии через логический элемент И (74HC08) и подключаем выход к тактовому входу второго счетчика (2CP0). Поскольку тактовый вход HC390 срабатывает по отрицательному фронту, тактовый импульс запускается, как только выход логического элемента И возвращается в исходное положение (когда первый счетчик возвращается с 9 обратно на 0).

Схема для 0–59отображение секунд

На данный момент у нас есть 2-значный дисплей, который считает от 0 до 99, поэтому нам нужно добавить сигнал сброса, который ограничивает отсчет 0-59 секунд. Для этого ищем цифру 6 (0110) на двоично-десятичном выходе второго счетчика. Мы видим, что нам нужно только И для строк 2Q1 и 2Q2, так как 6 — это первое значение, имеющее высокие средние 2 бита. Мы объединяем эти линии и подключаем выход к основной линии сброса второго счетчика (2MR), чтобы мгновенно сбросить его на 0, когда он достигает 6.

Стоит отметить, что технически мы считаем от 0 до 6, а не от 0 до 5, но значение 6 появляется всего на несколько десятков наносекунд, пока распространяется сброс, что слишком мало для того, чтобы светодиодный дисплей мог среагировать.

Отображение минут идентично схеме секунд, описанной выше, так как обе они имеют основание 60. У нас есть еще один двойной счетчик BCD 74HC390, первый из которых имеет линию синхронизации (CP0), подключенную к тому же сигналу, который управляет сбросом (2MR) отображения секунд. Таким образом, когда секунды переходят от 59 к 0, счетчик минут увеличивается на единицу.

Дополнительные 2 логических элемента И, необходимые для переноса и сброса секции минут, взяты из того же счетверенного И-чипа 74HC08, который используется для секунд.

Отображение часов немного отличается, так как это основание 24, разделенное на 2 десятичных отображения со следующими правилами:

  • правое (самое низкое) отображение отсчитывает от 0 до 9
  • циклически возвращается к 0 и отправляет перенос сигнал на левый дисплей
  • правый снова считает от 0 до 9
  • циклически возвращается к 0 и отправляет другой сигнал переноса на левый дисплей
  • правый дисплей считает от 0 до 4
  • когда комбинированные дисплеи достигают 24, отправляет сброс сигнал к обоим

Для левого дисплея, который считает от 0 до 2, мы используем только секцию счетчика деления на 5 с тактовым входом 2CP1, подключенным к сигналу переноса правого дисплея, идентичным схемам минут и секунд.

Схема для отображения 0–23 часов

Для сброса на 24 мы видим, что 24 в BCD равно 0010–0100, что является первым значением, которое имеет высокие значения как 2Q2, так и 1Q2, поэтому мы можем выполнить операцию И и связать результат с обоими сбросить входы.

Чтобы вручную установить время, мы можем взять сигналы часов на счетчиках, подключить их к кнопкам, чтобы продвигать их по одному нажатию за раз. Для простоты я решил подражать интерфейсу многих радиочасов 70-х и 80-х годов, которые обычно имели три кнопки: одну, которую вы удерживали, чтобы войти в режим блокировки, затем одну, чтобы перевести минуты, и одну, чтобы перевести часы.

Винтажные цифровые радиочасы Sonic 1980-х годов FM / AM

При установке времени мы должны остановить обычный сигнал часов, сбросить отображение секунд на 00, отключить обычный сигнал переноса с секунд на минуты и с минут на часы, чтобы вы могли зациклить счетчик минут без увеличения часовой секции.

Для этого мы пропускаем линии тактовых входов для счетчиков минут и часов через линейный мультиплексор 74HC157, который позволяет нам переключать тактовые входы с сигналов переноса на ручные кнопки.

Цифровой мультиплексор переключается между различными входными сигналами (Википедия)

74HC157 имеет четыре 2-линейных входа и одну линию выбора (S), которая определяет, какие из входных линий активны. Линия выбора подключена к кнопке «установить время».

Подсистема кнопок управления временем

Обратите внимание, что все сигналы по пути инвертируются. Это связано с тем, что тактовый вход счетчиков запускается отрицательным фронтом, а сигналы сброса/переноса, которые управляют тактовым сигналом следующего каскада, запускаются положительным фронтом.

Кнопка «установить время» не только управляет линией выбора мультиплексора, но и подключается к линии сброса второго счетчика, гарантируя их сброс на «00». Поскольку этот контакт сброса также управляется триггером 59-to-60, мне понадобился вентиль ИЛИ, чтобы соединить эти две линии. Тем не менее, поскольку это было единственное логическое ИЛИ, которое мне было нужно на плате, я не счел нужным добавлять полноценную счетверенную ИЛИ 74HC32 IC. Вместо этого я использовал два диода для создания вентиля ИЛИ, сэкономив большую часть места, которое заняла бы другая микросхема.

При подключении кнопок к входам инвертора необходимо учитывать контактный шум при нажатии или отпускании кнопки. Когда механический переключатель соприкасается с двумя металлическими контактами, существует очень короткий момент, в течение которого контакты «подпрыгивают», создавая и разрывая электрическое соединение.

Это видно на логическом анализаторе или осциллографе при достаточно высокой частоте дискретизации.

Механические переключатели не замыкают и не размыкают контакт (Джек Г. Ганссле)

Если бы мы подключили этот сигнал напрямую к входу счетчика, одно нажатие кнопки фактически увеличило бы показания счетчика на величину, равную количеству скачков.

Существует много способов смягчить это явление, аппаратно или, если используется микроконтроллер, программно. Мы сделаем это аппаратно, используя резисторы и конденсаторы, чтобы построить фильтр нижних частот для сглаживания перехода сигнала.

Когда кнопка не нажата, сигнал hour_button становится низким через R5 . При ее нажатии конденсатор C3 начинает заряжаться через резистор R1 , в результате чего напряжение на hour_button медленно подниматься.

С VCC при 3 В, R1 при 100 кОм и C3 при 100 нФ требуется около 11 миллисекунд для повышения напряжения до 2 В (логический уровень КМОП). Если в течение этого времени соединение кратковременно дребезжит, напряжение больше не колеблется резко между 0В и 3В, а просто немного продлевает время заряда конденсатора. Это важно, потому что дикие колебания от рельса к рельсу вызывают цифровые колебания.

логических уровней CMOS (Sparkfun)

При отпускании C3 медленно разряжается через диод D1 и резистор R5 , предотвращая дребезг.

Мы еще не там.

3,3 В CMOS определяет низкий логический уровень как любое напряжение ниже 0,8 В, а все, что выше 2 В, как высокий логический уровень. Однако поведение между 0,8 В и 2 В не определено, и наш конденсатор заряжается в течение 11 мс, проводя долгое время в этой неопределенной зоне.

Чтобы предотвратить нежелательное поведение во время этого перехода, мы пропускаем сигнал через инвертор триггера Шмитта. Триггер Шмитта применяет гистерезис к входному сигналу, находясь в неопределенной зоне, определяя своим выходным состоянием его предыдущее состояние. Это означает, что при подъеме выше 0,8 В выход остается низким логическим уровнем до тех пор, пока не будет достигнуто 2 В, и наоборот при снижении.

На данный момент у нас есть почти все, кроме точного тактового сигнала. В истинно винтажном стиле я хотел использовать для этого кварцевый кристалл. Кварц — это материал, обладающий пьезоэлектрическими свойствами: он генерирует электрический заряд в ответ на механическое воздействие и слегка деформируется при воздействии электрического заряда.

Это свойство можно использовать для создания схемы кварцевого генератора. Сначала подайте напряжение на кристалл и подождите, пока он деформируется, чтобы противостоять заряду. Затем, когда он полностью деформируется, снимите заряд и подождите, пока кристалл противостоит изменению, восстанавливая свою форму, после чего мы снова применяем заряд.

Продолжительность деформации кристалла кварца напрямую связана с его толщиной, которая, в свою очередь, очень точно определяет его резонансную частоту. Таким образом можно резать кристаллы кварца с частотой от нескольких килогерц до сотен мегагерц.

Цепь кварцевого генератора Пирса-Гейта

Механизм изменения приложенного напряжения в конце каждой фазы часто представляет собой цифровой инвертор, который также обеспечивает усиление, необходимое для поддержания генерации.

Я выбрал «часовой кристалл» ECS-2X6X с резонансной частотой 32 768 Гц. Поскольку 32 768 равно 2¹⁵, мы можем пропустить сигнал через 15-ступенчатый делитель частоты, чтобы получить точную тактовую частоту 1 Гц.

Часовой кристалл с частотой 32 768 Гц, подключенный к комбинированному генератору 74HC4060 и 14-ступенчатому счетчику пульсаций. Мы добавляем дополнительный одиночный триггер (74HC74), чтобы обеспечить окончательное 15-е деление до 1 Гц.

Логический анализатор показывает очень точный тактовый сигнал после 14 делений.

Со всеми этими компонентами мы наконец-то смогли подключить все на макетной плате для пробного запуска.

Я помню, как в детстве у меня были радиочасы, светодиодный дисплей которых автоматически регулировал яркость в зависимости от условий окружающего освещения. При дневном свете было очень светло, а ночью тускнело, поэтому не освещала всю комнату.

Если я собирался поместить это на печатную плату и использовать ее, она должна была иметь эту функцию.

В отличие от ламп накаливания, яркость светодиодов не так просто контролировать путем аналогового изменения напряжения или тока. Типичный красный светодиод не будет излучать свет до тех пор, пока не будет подано около 2 В, и перегорит примерно при 3 В. При модуляции тока через переменный последовательный резистор мы получаем относительно низкую контрастность и различия в цветности или цветовой температуре.

Вместо этого яркостью светодиода легче управлять, заставляя его мигать очень быстро, изменяя время между включением и выключением с помощью процесса, называемого широтно-импульсной модуляцией или ШИМ.

Используя универсальную микросхему таймера 555, фоторезистор и несколько конденсаторов и резисторов, мы можем создать низкотехнологичный широтно-импульсный модулятор.

Типичная схема генератора 555 (www.electronics-tutorials.ws)

Типичная схема генератора 555 (нестабильный мультивибратор) показана выше. Конденсатор C1 заряжается через R1 + R2 ( t1 — выход на контакт 3 высокий) и разряжается через R2 ( t2 — контакт 3 низкий). Когда R1 и R2 имеют одинаковое сопротивление, интервал t1 (высокий) в два раза длиннее, чем t2 (низкий). Говорят, что рабочий цикл составляет 67%.

Чтобы создать ШИМ, мы можем пропустить общие катоды всех 7-сегментных дисплеев через NPN-транзистор на землю и соединить выход таймера 555 с базой транзистора.

Теперь мы хотели бы использовать фоторезистор для R2, ​​чтобы мы могли сократить или увеличить время разряда (в течение которого светодиоды выключены), сохраняя при этом фиксированное время зарядки.

Поскольку рабочий цикл стандартной схемы не может опускаться ниже 50 %, мы добавили несколько диодов для обхода резистора R2 во время зарядки, зафиксировав время зарядки на уровне ~0,3 мс.

Адаптивная яркость с помощью широтно-импульсной модуляции, управляемой фоторезистором

Поскольку в полной темноте фоторезисторы потребляют много мегаом, я параллельно подключил резистор 470 кОм, чтобы ограничить время разряда максимальным значением 15 мс при частоте 64 Гц без мерцания (рабочий цикл ~2%). При полном дневном свете время разряда сокращается до 0,1 мс при рабочем цикле 80% на частоте ~ 2 кГц, что обеспечивает широкий диапазон интенсивности.

Несмотря на все это, прототип макетной платы не достигал полной яркости даже средь бела дня. Это оказалось из-за резистора R12 номиналом 100 кОм, который я первоначально использовал между 555 и транзистором. При 3В и 100К ток через базу 30мкА. Максимальный коэффициент усиления PN2222 составляет около 300, что ограничивает ток стока светодиодов на уровне 9 мА, чего недостаточно для работы всех дисплеев с полной яркостью.

Я хотел запитать схему через USB из-за его повсеместного распространения. Тем не менее, USB составляет 5 В, и хотя микросхемы CMOS работают с этим нормально, в техническом описании кварцевого кристалла предлагается использовать его с 3 В и на основе этого приведены значения для последовательного резистора и нагрузочных конденсаторов. Работа при напряжении 5 В может потребовать тщательного пересчета этих компонентов.

Схема, предложенная в техническом описании кристалла, основана на 3 В.

Вместо этого я решил добавить регулятор напряжения и запустить всю схему на 3 В. Поскольку я не смог найти готовых стабилизаторов с фиксированным напряжением 3 В (3,3 В — более популярное выходное напряжение), я выбрал регулируемый линейный стабилизатор LD1117V на 800 мА и добавил потенциометр, чтобы позже можно было настроить точное напряжение на плате.

Схема регулятора напряжения

Шесть 7-сегментных индикаторов с 42 светодиодами являются основными потребителями энергии. При напряжении 3 В с последовательным резистором 150 Ом и падением напряжения 2 В каждый из них потребляет 7 мА, что в сумме составляет почти 300 мА.

Поскольку большинство меньших регуляторов TO-92 ограничены током ~100 мА, больше подходит 800 мА LD11187V.

В этот момент я очень хотел посмотреть, смогу ли я спроектировать печатную плату, чтобы вывести проект за рамки макета и превратить его в реально пригодную для использования вещь.

Не имея опыта EDA, я установил KiCad, следил за серией руководств DigiKey на YouTube и наткнулся на первоначальную двухслойную компоновку платы.

Компоновка печатной платы в KiCad

После нескольких недель мучительных корректировок и изменений я решил сделать решительный шаг и отправить дизайн в компанию по производству печатных плат для запуска прототипа. Я загрузил проект в ОшПарк и заказал минимальную партию из 3 досок.

Предварительный просмотр OshPark, созданный автоматически во время заказа

Тем временем я заказал у DigiKey достаточное количество компонентов для сборки 3 плат.

После 10 дней ожидания платы прибыли!

Получение этих первых досок было довольно волнительным, но и нервным. Было бы нелегко вносить изменения или исправлять ошибки, и как только все будет припаяно, даже отладка может стать проблемой.

Калибровка регулятора напряжения перед установкой кристалла

Именно в этот момент я столкнулся с первой реальной проблемой. В то время как схема кварцевого генератора работала нормально на макетной плате, на полностью собранной печатной плате она работала хуже. Он бежал слишком быстро. Ровно в 5 раз быстрее, чем должно.

Причиной несоответствия поведения на макетной плате и на печатной плате может быть разница в емкости. При 22 пФ нагрузочные конденсаторы довольно малы, поэтому необходимо предвидеть и учитывать паразитную емкость от дорожек и проводов и дополнительное сопротивление от плохих контактов макета.

нагрузочные конденсаторы и добавочный резистор. Теперь, когда все было спаяно, это было намного сложнее.

Трудный путь отладки

Высокая стоимость печатной платы для этого подхода методом проб и ошибок делала его маловероятным, и единственное изменение, которое мне удалось добиться, это конфигурация, при которой кристалл колебался точно 7 раз. раз быстрее, чем нужно. Мне не удалось снизить его частоту.

Измерение частоты колебаний с помощью логического анализатора

Я попытался понять фундаментальные свойства и математические расчеты цепей RLC и кварцевого генератора, чтобы понять влияние различных значений емкости нагрузки, последовательного сопротивления и напряжения на уровень возбуждения. и частота. Таким образом, я смогу точно определить правильные значения компонентов для моей платы.

begingroup\$ Редактировать: Моя основная цель — изучить математическую модель для расчета нагрузочного резистора \$R_s\$ до…

electronics.stackexchange. com

К сожалению, я больше инженер, чем академик и я должен был признать, что необходим альтернативный подход, если я хочу успешно завершить этот проект.

Тогда мой друг указал мне на микросхемы генераторов, которые содержат высокоточный резонатор вместе со всеми схемами, необходимыми для обеспечения стабильной и точной выходной частоты. Не требуется никаких настроек или внешних компонентов, что делает их удобной заменой схем на основе кварцевых кристаллов.

Если бы я мог заменить схему кварцевого генератора на печатной плате микросхемой генератора MEMS той же частоты и подключить ее к тактовому делителю 74HC4060, я мог бы запустить ее.

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

Я выбрал SiT1630, который представляет собой МЭМС-генератор с частотой 32 768 Гц в очень маленьком корпусе SOT23–5 (похоже, они не входят в сквозное отверстие).

Затем я создал очень маленькую печатную плату с расположением сквозных отверстий, точно совпадающим с положением кристаллической схемы. Тогда я смогу использовать короткие одножильные провода не только для прокладки сигнальных соединений между двумя платами, но также использовать их для обеспечения структурного монтажного механизма.

На этой маленькой плате h3 подключается к одному из выводов GND нагрузочного конденсатора, h2 использует неподключенное сквозное отверстие другого конденсатора для прокладки провода питания. Этот провод проходит через заднюю часть платы, где он проходит, и соединяется с клеммой VCC ближайшей микросхемы.

h4 подключается к терминалу основания кристалла, который подключен к тактовому входу 74HC4060, в то время как h5 ни к чему не подключен и просто обеспечивает структурную поддержку.

Плата расширения MEMS вставляется в сквозные отверстия старой кварцевой схемы. Аппаратная заплатка

. Предыдущее решение добавить стабилизатор напряжения для работы платы на 3 В вместо USB-входа на 5 В оказалось неоценимым на этом этапе, поскольку все доступные МЭМС-генераторы на DigiKey не работают. номиналом 1,5–3,63 В.

Со всем этим у меня наконец-то появились рабочие часы!

Когда я делал печатную плату, я проделал 5 монтажных отверстий, и теперь пришло время сделать их полезными. Чтобы иметь возможность повесить его на стену, я создал очень простую 3D-печатную рамку в Tinkercad, которая оставила бы всю печатную плату видимой.

Прототипирование в местной библиотеке

Я использовал общедоступные принтеры в местной библиотеке, чтобы попробовать разные цвета и проверить размеры, а затем использовал 3D-хабы, чтобы заказать 3 копии (в конце концов, Ошпарк прислал мне 3 печатных платы).

Конечный продукт, 1 из 3Настенный и официально введен в эксплуатацию

Программные проекты редко бывают действительно «готовыми». С программным обеспечением вы можете просто создать новый коммит и выпустить его в любое время, постоянно улучшая качество, исправляя ошибки и добавляя функции. Вы можете протестировать наполовину готовую версию, примерить ее на размер и соответствующим образом отрегулировать. Это настолько нормальная часть разработки программного обеспечения, что ее легко принять как должное.

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

Первое, о чем я пожалел, так это о том, что не поставил между дисплеями вездесущие двойные мигающие точки с частотой 1 Гц. Это было бы тривиально, и они могли бы перестать мигать, когда вы нажимаете кнопку «установить время» в качестве визуального индикатора того, что вы поставили часы на паузу.

Еще одно было то, что самый первый дисплей, как и все остальные, будет показывать ноль. Однако большинство цифровых часов показывают полночь как «0:00» вместо «00:00», и это было бы приятно.

И, наконец, самое серьезное, я забыл сбросить делитель часов, когда нажимаю «установить время». Вместо этого я просто ставлю линию сброса счетчика секунд на высокий уровень. Как следствие, невозможно точно синхронизировать время с точностью до секунды.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *