Съдържание:

Прост цифров часовник, използващ Arduino Nano & DS1307: 4 стъпки
Прост цифров часовник, използващ Arduino Nano & DS1307: 4 стъпки

Видео: Прост цифров часовник, използващ Arduino Nano & DS1307: 4 стъпки

Видео: Прост цифров часовник, използващ Arduino Nano & DS1307: 4 стъпки
Видео: построить цифровые часы с помощью arduino, sunfounder, arduino project, diy 2024, Ноември
Anonim
Прост цифров часовник, използващ Arduino Nano и DS1307
Прост цифров часовник, използващ Arduino Nano и DS1307

В тази статия ще ви покажа урок за направата на цифров часовник с помощта на Arduino.. Платката Arduino, която използвам, е Arduino Nano V3, DS1307 като доставчик на данни за времето, MAX7219 7 сегмент като дисплей на часовника.

преди да влезете в урока, препоръчвам да сте запознати с използването на устройства и аксесоари на Arduino. Това ще ви улесни да следвате урока, който показах.

Ако не сте запознати с използването на дъски Arduino, не се притеснявайте.

Можете да прочетете тази статия, за да се затопли:

  • Как да използвате Arduino Nano
  • MAX7219 7-сегмент, използващ Arduino
  • Как да използвате DS1307 с помощта на Arduino

Стъпка 1: Необходими компоненти

Задължителни компоненти
Задължителни компоненти
Задължителни компоненти
Задължителни компоненти
Задължителни компоненти
Задължителни компоненти

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

  • Arduino Nano V3
  • RTC DS1307
  • MAX7210 7 Сегмент
  • Jumper Wire
  • USB мини
  • Съвет на проекта

Задължителна библиотека:

  • Тел
  • LedControl
  • RTClib

Стъпка 2: Сглобете всички компоненти

Сглобете всички компоненти
Сглобете всички компоненти

Ако всички компоненти са получени, сега е време за сглобяване.

Вижте описанието по -долу или вижте снимката по -горе:

Arduino към RTC DS1307

GND => GND

+5V => VCC

A4 => SDA

A5 => SCL

Arduino към MAX7219

+5V => 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, false); lc.setIntensity (0, 8); lc.clearDisplay (0); }

void loop () {

DateTime сега = rtc.now (); if (now.second () 40) {lc.setDigit (0, 0, now.second ()%10, false); lc.setDigit (0, 1, now.second ()/10, false); lc.setChar (0, 2, '-', невярно); lc.setDigit (0, 3, now.minute ()%10, невярно); lc.setDigit (0, 4, now.minute ()/10, false); lc.setChar (0, 5, '-', невярно); lc.setDigit (0, 6, now.hour ()%10, false); lc.setDigit (0, 7, now.hour ()/10, false); }

if (now.second () == 30 || now.second () == 40)

{lc.clearDisplay (0); }

if (now.second ()> = 31 && now.second () <40) {lc.setDigit (0, 6, now.day ()%10, true); lc.setDigit (0, 7, now.day ()/10, false); lc.setDigit (0, 4, now.menth ()%10, вярно); lc.setDigit (0, 5, now.month ()/10, false); lc.setDigit (0, 0, (now.year ()%1000)%10, false); lc.setDigit (0, 1, (now.year ()%1000)/10, невярно); lc.setDigit (0, 2, (сега. година ()%1000)/100, невярно); lc.setDigit (0, 3, now.year ()/1000, false); }}

Стъпка 4: Резултат

След като всички стъпки са успешни, това е резултатът, който ще видите: (гледайте видео)

на всеки 31 -ва до 40 -та секунда. 7 сегмента ще покажат датата. С изключение на тази секунда, 7 сегментът ще показва часовника

Препоръчано: