Оглавление:

Простые цифровые часы с использованием Arduino Nano и DS1307: 4 шага
Простые цифровые часы с использованием Arduino Nano и DS1307: 4 шага

Видео: Простые цифровые часы с использованием Arduino Nano и DS1307: 4 шага

Видео: Простые цифровые часы с использованием Arduino Nano и DS1307: 4 шага
Видео: Часы реального времени. Уроки Arduino 2024, Июль
Anonim
Простые цифровые часы с использованием Arduino Nano и DS1307
Простые цифровые часы с использованием Arduino Nano и DS1307

В этой статье я покажу вам учебное пособие по созданию цифровых часов с использованием Arduino. Я использую плату Arduino: Arduino Nano V3, DS1307 в качестве поставщика данных времени, MAX7219 7 Segment в качестве дисплея часов.

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

Если вы не знакомы с использованием плат Arduino, не волнуйтесь.

Вы можете прочитать эту статью, чтобы разогреться:

  • Как использовать Arduino Nano
  • MAX7219 7-сегментный с использованием Arduino
  • Как использовать DS1307 с помощью Arduino

Шаг 1. Необходимые компоненты

Обязательные компоненты
Обязательные компоненты
Обязательные компоненты
Обязательные компоненты
Обязательные компоненты
Обязательные компоненты

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

  • Ардуино Нано V3
  • RTC DS1307
  • MAX7210 7 сегментов
  • Перемычка
  • USBmini
  • Совет проекта

Требуется библиотека:

  • Проволока
  • LedControl
  • RTClib

Шаг 2: соберите все компоненты

Собрать все компоненты
Собрать все компоненты

Если все комплектующие были получены, пора собирать.

См. Описание ниже или изображение выше:

Arduino для RTC DS1307

GND => GND

+ 5 В => VCC

A4 => SDA

A5 => SCL

Arduino для MAX7219

+ 5 В => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS

После того, как все компоненты установлены, переходите к разделу программирования.

Шаг 3: программирование

скопируйте и вставьте этот набросок в созданный вами набросок. После этого загрузите программу на доску arduno

#include #include "LedControl.h" #include "RTClib.h"

RTC_DS1307 rtc;

LedControl lc = LedControl (12, 11, 10, 1);

void setup () {

Serial.begin (57600); if (! rtc.begin ()) {Serial.println ("Не удалось найти RTC"); в то время как (1); } if (! rtc.isrunning ()) {Serial.println («RTC НЕ работает!»); // следующая строка устанавливает RTC на дату и время компиляции этого скетча // rtc.adjust (DateTime (F (_ DATE_), F (_ TIME_))); // Эта строка устанавливает RTC с явной датой и временем, например, чтобы установить // 21 января 2014 года в 3 часа ночи, вы должны вызвать: // rtc.adjust (DateTime (2014, 1, 21, 3, 0, 0)); } lc.shutdown (0, ложь); lc.setIntensity (0, 8); lc.clearDisplay (0); }

void loop () {

DateTime now = rtc.now (); если (now.second () 40) {lc.setDigit (0, 0, now.second ()% 10, false); lc.setDigit (0, 1, now.second () / 10, ложь); lc.setChar (0, 2, '-', ложь); lc.setDigit (0, 3, now.minute ()% 10, ложь); lc.setDigit (0, 4, now.minute () / 10, ложь); lc.setChar (0, 5, '-', ложь); lc.setDigit (0, 6, now.hour ()% 10, ложь); lc.setDigit (0, 7, now.hour () / 10, ложь); }

если (now.second () == 30 || now.second () == 40)

{lc.clearDisplay (0); }

если (now.second ()> = 31 && now.second () <40) {lc.setDigit (0, 6, now.day ()% 10, true); lc.setDigit (0, 7, now.day () / 10, ложь); lc.setDigit (0, 4, now.month ()% 10, истина); lc.setDigit (0, 5, now.month () / 10, ложь); lc.setDigit (0, 0, (now.year ()% 1000)% 10, false); lc.setDigit (0, 1, (now.year ()% 1000) / 10, ложь); lc.setDigit (0, 2, (now.year ()% 1000) / 100, ложь); lc.setDigit (0, 3, now.year () / 1000, ложь); }}

Шаг 4: Результат

После успешного выполнения всех шагов вы увидите следующий результат: (смотрите видео)

каждые 31–40 секунд. 7 сегментов будут отображать дату. За исключением этой секунды, 7 сегментов будут отображать часы.

Рекомендуемые: