- Необходимые компоненты
- Принципиальная схема и объяснение
- Разработка и изготовление печатных плат для цифровых часов
- Заказ печатной платы с помощью PCBGoGo
- Сборка печатной платы
- Тестирование цифровых часов
В каждых цифровых часах есть кристалл, позволяющий отслеживать время. Этот кристалл присутствует не только в часах, но и во всех вычислительных системах реального времени. Этот кристалл генерирует тактовые импульсы, необходимые для расчетов времени. Хотя есть и другие способы получения тактовых импульсов для более высокой точности и частоты, но наиболее предпочтительным способом является использование кристалла для отслеживания времени. Здесь мы будем использовать микросхему DS3231 RTC для создания цифровых настенных часов на базе Atmega16. DS3231 RTC имеет внутри высокоточный кварцевый генератор, поэтому внешний кварцевый генератор не требуется.
В этом проекте цифровых часов десять общих анодных 7-сегментных дисплеев по 0,8 дюйма используются для отображения времени и даты. Здесь семь сегментных дисплеев используются для отображения часа, минуты, даты, месяца и года. Наша конструкция печатной платы также имеет опции для отображения секунд и температуры, которые можно отобразить, добавив дополнительные единицы отображения.
Необходимые компоненты
- Микроконтроллер ATmega16 AVR
- DS3231 RTC IC
- Обычный анод 0,8-дюймовый семисегментный дисплей (больше, чем дисплей обычного размера (0,56 дюйма)
- Нажать кнопку
- Ячейка кнопочная 3в
- Регулятор напряжения 7805
- Конденсатор 1000 мкФ
- Зуммер (необязательно)
- Транзисторы BC547 и BC557
- Конденсатор 10 мкФ
- Резистор 100 Ом
- Резистор 1к
- Резистор 10к
- Печатная плата
- Перемычки
- Burgstips
- Адаптер питания
Пользователь также может использовать Atmega32, который необходимо настроить в компиляторе перед генерацией шестнадцатеричного кода.
Принципиальная схема и объяснение
Эта схема цифровых настенных часов состоит из двух частей: одна часть дисплея, которая имеет 5 пар по 7 сегментов на пяти разных платах печатной платы, а другая - управляемая часть модуля, которая отвечает за выборку времени из чипа RTC и отправку этих данных и времени на 7-сегментный дисплей. Поскольку мы использовали 10 семисегментных дисплеев, мы не можем подключить каждый дисплей к отдельному порту ввода-вывода. Таким образом, здесь метод мультиплексирования используется для соединения нескольких семи сегментов с использованием меньшего количества выводов микроконтроллера.
Выводы светодиодов a, b, c, d, e, f, g, h семисегментного дисплея подключены к PORTB atmega16 параллельно. Здесь мы использовали 10 семисегментных дисплеев, поэтому нам нужно 10 управляющих контактов, которые подключены к PORTD, PORTA и PORTC.
RTC DS3231, имеющий внутренний кристалл, подключен к выводам SDA и SCL порта PORTC, потому что этот чип работает по протоколу I2C. Метод подключения этой микросхемы такой же, как у DS1307. Мы использовали DS1307 с Arduino, Raspberry Pi и 8051 MCU. Один и тот же код можно использовать как для DS3231, так и для DS1307.
Два подтягивающих резистора 10 кОм подключены к линиям SDA и SCL. Круглый элемент питания 3 В используется для питания микросхемы RTC, чтобы отслеживать время, даже когда основное питание отключено. Когда питание снова вернется, время начнет отображаться на семисегментном дисплее. Теперь у нас есть несколько кнопок для установки времени в ПОРТУ A, полный процесс объяснен в видео, приведенном в конце. Стабилизатор напряжения 5В используется для преобразования входного напряжения в 5В. Все соединения показаны на схеме ниже:
Для одной дисплейной платы используются два семисегментных дисплея и 2 светодиода. Итак, у нас есть пять различных панелей для отображения времени в часах и минутах (ЧЧ-ММ) и даты в ДД-ММ-ГГ.
Разработка и изготовление печатных плат для цифровых часов
Для этого проекта настенных часов на базе Atmega16 мы разработали две печатные платы. Одна предназначена для блока управления, который используется для управления всеми операциями проекта, а вторая часть предназначена для отображения времени и даты на семи сегментных дисплеях. Дисплейная часть содержит пять пар 0,8-дюймовых семи сегментных дисплеев. Итак, собрав 5 частей, мы получаем полные цифровые часы. Для мультиплексирования 7-сегментных дисплеев линия данных 5 печатных плат будет подключена к одному и тому же порту блока управления, а линия управления подключена к другому выводу блока управления.
Ниже представлены виды сверху и снизу макетов печатных плат одной дисплейной платы, состоящей из двух семисегментных дисплеев:
Ниже приведены вид сверху и снизу печатных плат блока управления.
Здесь мы прикрепляем файл Gerber для обеих плат:
- Файл Gerber для блока управления на базе Atmega16
- Файл Гербера для семисегментной дисплейной платы
Заказ печатной платы с помощью PCBGoGo
В Интернете доступно множество услуг по изготовлению печатных плат, но поскольку я использовал PCBGoGo ранее в одном из моих других проектов, я нашел его дешевым и простым по сравнению с другими поставщиками.
Вот шаги, чтобы заказать печатную плату в PCBGoGo:
Шаг 1. Зайдите на сайт www.pcbgogo.com, зарегистрируйтесь, если вы впервые. Затем на вкладке прототипа печатной платы введите размеры вашей печатной платы, количество слоев и количество требуемых печатных плат.
Шаг 2: Продолжите, нажав кнопку Цитировать сейчас . Вы попадете на страницу, где при необходимости установите несколько дополнительных параметров, например, используемый материал, интервал дорожек и т. Д. Но в большинстве случаев значения по умолчанию будут работать нормально. Единственное, что мы должны здесь учитывать, - это цена и время. Как видите, время сборки составляет всего 2-3 дня, а для нашего PSB это всего лишь 5 долларов. Затем вы можете выбрать предпочтительный способ доставки в зависимости от ваших требований.
Шаг 3: Последний шаг - загрузить файл Gerber и продолжить оплату. Чтобы убедиться, что процесс проходит гладко, PCBGOGO проверяет, действителен ли ваш файл Gerber, прежде чем продолжить оплату. Таким образом, вы можете быть уверены, что ваша печатная плата удобна для изготовления и будет доставлена вам в установленном порядке.
Теперь PCBGoGo потребуется от 10 минут до 1 часа, чтобы просмотреть ваш файл Gerber. После завершения проверки вы можете приступить к оплате.
Сборка печатной платы
После того, как плата была заказана, она пришла ко мне через несколько дней, хотя курьер доставил ее в аккуратно помеченную, хорошо упакованную коробку, и, как всегда, качество печатной платы было потрясающим. Я делюсь несколькими фотографиями досок ниже, чтобы вы могли судить.
Я включил паяльник и приступил к сборке платы. Поскольку посадочные места, контактные площадки, переходные отверстия и шелкография идеально подходят по форме и размеру, у меня не было проблем со сборкой платы. Плата была готова всего за 10 минут с момента распаковки коробки.
Ниже представлены некоторые фотографии платы после пайки.
Тестирование цифровых часов
Полный код приведен в конце этого руководства, просто подключите печатные платы, как показано на принципиальной схеме, и загрузите код в Atmega16. И вы увидите время и дату, появляющиеся на десяти семи сегментных дисплеях.
Время и дату можно установить с помощью четырех кнопок на блоке управления, как показано на видео, приведенном ниже.