Подключение DS1307 Real-Time Clock к Arduino: Пошаговое руководство
Вы ищете способ отслеживать время на вашем Arduino, включая секунды, минуты, дни, месяцы и даже годы? Вам нужно RTC модуль, DS1307 Arduino в этом случае.
Часы реального времени (RTC) — это устройство, которое может помочь вам следить за временем и даже выполнять действия в конкретное время.
Однако вам нужно будет связать один с Arduino для этого, чтобы работало на любой схеме. К счастью, мы здесь для вас.
В этой статье мы используем DS1307 как наш RTC модуль, и вы узнаете всё о нем и как использовать их с платами Arduino.
Что такое модуль DS1307?
Arduino Uno
Arduino и большинство микроконтроллеры поставляются с встроенными таймерами, которые вы можете использовать для подачи питания на плату. Но как только вы отключаете питание, он сбросит все ваши таймеры. Вот где приходит на помощь RTC модуль.
Если вы занимаетесь логированием данных, сигнализацией или часами приложений, вам понадобится RTC для непрерывной работы. Также вы можете использовать встроенный таймер микроконтроллера для более легких проектов.
Модель DS1307 — это один популярный RTC, который работает на основе чипа часов DS1307. Он может показать вам секунды, минуты, часы, дни, месяцы и годы любого проекта, который вы записываете.
Правда, DS1307 использует литиевую батарею, которая держит его независимым от питания Arduino.
По этой причине он продолжает отслеживать время даже если вы перепрограммируете ваш Arduino или отключите его от питания.
Интересно, DS1307 также экономичен по затратам и энергоэффективен. Также он способен работать длительные периоды перед тем, как понадобится заменить батареи.
Распиновка DS1307
Модуль RTC DS1307 с Arduino
Теперь давайте посмотрим, как использовать DS1307 с Arduino.
Схема
Посмотрите схему для этого проекта ниже:
Схема
Необходимые компоненты
Вот компоненты, которые вам нужны:
- Плата Arduino Uno
- Модель RTC DS1307
- USB кабель для загрузки
- Макетная плата
- Перемычки
- Base Shield V2 (опционально)
Как построить
Шаг 1: Подключите ваше оборудование
Сначала подключите ваш RTC к порту I2C базового щита. Это не обязательно, но это сделает ваши соединения легче. Так, если у вас нет базового щита, вы можете подключить ваш RTC напрямую к вашей плате Arduino. Вы можете сделать это, соединив выводы RTC и Arduino следующим образом:
- VCC (RTC) к 5V (Arduino)
- GND к GND
- SDA к SDA
- SCL к SCL
Далее вставьте RTC в вашу плату Arduino; если вы используете базовый щит. После этого используйте ваш USB кабель для подключения вашего Arduino к компьютеру. Действительно, если вы хотите наслаждаться максимальной производительностью, добавьте 3-вольтовую литиевую ячейку батареи CR1225 к вашему RTC. Однако помните, что использование основного питания вашего Arduino для запуска вашего RTC может снизить производительность и остановить кристалл от колебаний.
Шаг 2: Настройте ваше программное обеспечение
В этом следующем критичном шаге загрузите библиотеку RTC и установите ее на ваш Arduino IDE. Затем вы можете создать новый эскиз Arduino и ввести следующие коды:
Код Arduino.
Вы можете изменить аргументы функции для установки текущей даты/времени. Однако обязательно сосредоточьтесь на формате этих аргументов. Он должен выглядеть так:
Далее вы можете загрузить свой код и открыть ваш последовательный монитор для сбора данных от вашего датчика.
DS3231 против DS1307: Что лучше?
Давайте encararemos это. То, что отличает два RTC — это точность отслеживания времени.
DS3231 предлагает более высокую точность, чем DS1307. Но это не всё. DS1307 обеспечивает оптимальную производительность, делая его внешнюю температуру влияющей на частоту цепи осциллятора, которая также управляет внутренним счетчиком.
Хотя это звучит как проблема, это помогает держать часы только отстающими на несколько минут каждый месяц. С другой стороны, DS3231 предлагает большую точность, так как никакие внешние факторы не влияют на его внутренний осциллятор.
Хотя оба модуля имеют небольшую EEPROM и способность генерировать прямоугольные волны с разными частотами, DS3231 имеет функцию будильника, делающую его даже лучше, чем DS1307. Однако это не значит, что DS1307 плох. Это все еще плата с отличной ценностью и будет хорошо работать для ваших приложений. Также DS1307 более доступен и дружелюбен к новичкам, чем DS3231.
Идеи проектов RTC Arduino
Вы заинтересованы в создании проектов RTC Arduino? Вот несколько отличных идей для начала.
RTC OLED Часы
OLED Часы
RTC модули позволяют вам сделать OLED цифровые часы для вашего дома. Когда вы соединяете его с вашим Arduino, он покажет время, день и дату.
Вот что вам нужно для этого проекта.
- Arduino Nano v3
- Grove-RTC
- Grove-Button (2)
- 3в монетная батарея
- 32.768КГц кристальный осциллятор
- Grove-OLED дисплей 1.12" V2
- 10к ом резистор (2)
- Arduino Uno Rev3
Вы можете получить полные ресурсы и руководство для этого проекта здесь.
RTC Arduino Система автоматического полива сада в реальном времени
Система полива сада
Хотите ли вы предотвратить гибель вашего растения, потому что вы всегда забывали поливать их? Если ваш ответ да, вы можете построить эту автоматизированную систему полива растений с RTC и Arduino. Интересно, она будет поливать ваши растения автоматически через интервалы.
Вот что вам нужно для этого проекта.
- 20-литровая канистра воды.
- Датчик уровня воды.
- Nano терминальный адаптер.
- Arduino Nano v3.
- Grove-buzzer.
- RTC.
- 12в блок питания.
- Grove-relay.
- Программное обеспечение Arduino IDE.
- Погодостойкий электрический ящик.
- 12В DC водяной насос.
Хотите построить этот проект? Вы можете получить ресурсы и полное руководство здесь.
Компактная сигнализация считывателем карт с использованием RTC модуля
Хотите ли вы улучшить безопасность вашего дома или получать оповещения, когда кто-то входит в ваш дом? Тогда вы можете построить эту DIY компактную систему сигнализации с считывателем карт, используя RTC модуль.
Также вы можете включать и выключать эту сигнализацию с считывателем карт. Альтернативно, вы можете активировать или деактивировать её автоматически с RTC.
Вот компоненты, которые вам нужны для этого проекта.
- Общий светодиод
- RC522 считыватель карт
- Arduino Uno Rev3
- Grove-buzzer
- Резистор (221 Ом)
- RTC
- Макетная плата
- Grove-ультразвуковой датчик расстояния
Нажмите здесь, чтобы получить полное руководство и ресурсы для этого проекта.
Подведение итогов
RTC
Интерфейсирование вашего DS1307 с Arduino открывает множество возможностей проектов. Следовательно, вы можете создавать автоматизированные проекты и даже полноэкранные цифровые часы. Вы также можете использовать RTC модуль для запоминания даты и времени.
В заключении, использование RTC без батареи обеспечивает более низкую производительность, чем ожидалось. Если вы хотите лучшую производительность от DS1307, рассмотрите добавление батареи в слот батареи.
Есть вопросы? Не стесняйтесь обращаться к нам, и мы будем рады помочь ответить на ваши вопросы.
Промышленные технологии
- Интерфейсы в Java: Как определять и реализовывать их с практическими примерами
- Повысьте эффективность завода с Genesis Intelligence Center Индустрии 4.0
- Оптимизация производства кабелей с E3.formboard: автоматизированная документация и интеграция разъемов
- Ускорение инноваций: использование инженерного дизайна для ускорения разработки продуктов
- Профилактика пищевого мошенничества в COVID-19: проверенные стратегии защиты здоровья
- Высокоскоростная фотография капель воды на Arduino Nano — DIY-триггер для вспышки
- Подключение Arduino Mega к GPS-модулю NEO‑6M: пошаговое руководство
- Генерация музыкальных тонов на Arduino: полный спектр 88 клавиш пианино
- Освоение управления оптовыми заказами с умными программными решениями
- Мастерство Edge AI-инференса: практическое руководство к действительным инсайтам