Cuprins:

Ceas digital simplu folosind Arduino Nano și DS1307: 4 pași
Ceas digital simplu folosind Arduino Nano și DS1307: 4 pași

Video: Ceas digital simplu folosind Arduino Nano și DS1307: 4 pași

Video: Ceas digital simplu folosind Arduino Nano și DS1307: 4 pași
Video: LDmicro 14: I2C LCD & DS3231 Real-Time Clock (Microcontroller PLC Ladder Programming with LDmicro) 2024, Iulie
Anonim
Ceas digital simplu folosind Arduino Nano și DS1307
Ceas digital simplu folosind Arduino Nano și DS1307

În acest articol vă voi arăta un tutorial pentru a crea un ceas digital folosind Arduino.. Placa Arduino pe care o folosesc este Arduino Nano V3, DS1307 ca furnizor de date de timp, MAX7219 7 Segment ca afișaj de ceas.

înainte de a intra în tutorial, vă recomand să vă familiarizați cu utilizarea dispozitivelor și accesoriilor Arduino. Acest lucru vă va face mai ușor să urmați tutorialul pe care l-am arătat.

Dacă nu sunteți familiarizați cu utilizarea plăcilor Arduino, nu vă faceți griji.

Puteți citi acest articol pentru a vă încălzi:

  • Cum se folosește Arduino Nano
  • MAX7219 7-segmente Utilizarea Arduino
  • Cum se folosește DS1307 Utilizarea Arduino

Pasul 1: Componente necesare

Componente necesare
Componente necesare
Componente necesare
Componente necesare
Componente necesare
Componente necesare

acestea sunt componentele de care avem nevoie pentru a crea un ceas digital:

  • Arduino Nano V3
  • RTC DS1307
  • MAX7210 7Segment
  • Jumper Wire
  • USBmini
  • Consiliul de proiect

Bibliotecă obligatorie:

  • Sârmă
  • LedControl
  • RTClib

Pasul 2: Asamblați toate componentele

Asamblați toate componentele
Asamblați toate componentele

Dacă toate componentele au fost obținute, acum este timpul să asamblați.

Vedeți descrierea de mai jos sau vedeți imaginea de mai sus:

Arduino la RTC DS1307

GND => GND

+ 5V => VCC

A4 => SDA

A5 => SCL

Arduino la MAX7219

+ 5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS

După instalarea tuturor componentelor, continuați cu secțiunea de programare.

Pasul 3: Programare

copiați și lipiți această schiță în schița pe care ați făcut-o. După aceea, încărcați programul pe placa arduno

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

RTC_DS1307 rtc;

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

configurare nulă () {

Serial.begin (57600); if (! rtc.begin ()) {Serial.println ("Nu s-a putut găsi RTC"); în timp ce (1); } if (! rtc.isrunning ()) {Serial.println ("RTC NU rulează!"); // următoarea linie setează RTC la data și ora la care a fost compilată această schiță // rtc.adjust (DateTime (F (_ DATE_), F (_ TIME_)))); // Această linie setează RTC-ul cu o dată și o oră explicite, de exemplu pentru a seta // 21 ianuarie 2014 la ora 03:00 sunați: // rtc.adjust (DateTime (2014, 1, 21, 3, 0, 0)); } lc.shutdown (0, false); lc.setIntensity (0, 8); lc.clearDisplay (0); }

bucla nulă () {

DateTime acum = 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, '-', fals); lc.setDigit (0, 3, now.minute ()% 10, fals); lc.setDigit (0, 4, now.minute () / 10, false); lc.setChar (0, 5, '-', fals); 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.month ()% 10, true); 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, false); lc.setDigit (0, 2, (now.year ()% 1000) / 100, false); lc.setDigit (0, 3, now.year () / 1000, false); }}

Pasul 4: Rezultat

După ce toți pașii au reușit, acesta este rezultatul pe care îl veți vedea: (vizionați video)

la fiecare 31 de secunde până la 40 de secunde. 7 segmente vor afișa data. Cu excepția acelei secunde, 7 segmente vor afișa ceasul

Recomandat: