Sommario:

Orologio digitale semplice con Arduino Nano e DS1307: 4 passaggi
Orologio digitale semplice con Arduino Nano e DS1307: 4 passaggi

Video: Orologio digitale semplice con Arduino Nano e DS1307: 4 passaggi

Video: Orologio digitale semplice con Arduino Nano e DS1307: 4 passaggi
Video: Orologio impostabile con menu con Arduino - Video 429 2024, Luglio
Anonim
Orologio digitale semplice con Arduino Nano e DS1307
Orologio digitale semplice con Arduino Nano e DS1307

In questo articolo ti mostrerò un tutorial per realizzare un orologio digitale usando Arduino. La scheda Arduino che uso è Arduino Nano V3, DS1307 come fornitore di dati temporali, MAX7219 7 Segment come display dell'orologio.

prima di entrare nel tutorial, ti consiglio di familiarizzare con l'uso di dispositivi e accessori Arduino. In questo modo sarà più facile seguire il tutorial che ho mostrato.

Se non hai familiarità con l'utilizzo delle schede Arduino, non preoccuparti.

Puoi leggere questo articolo per riscaldarti:

  • Come usare Arduino Nano
  • MAX7219 7 segmenti con Arduino
  • Come usare DS1307 usando Arduino

Passaggio 1: componenti richiesti

Componenti richiesti
Componenti richiesti
Componenti richiesti
Componenti richiesti
Componenti richiesti
Componenti richiesti

questi sono i componenti di cui abbiamo bisogno per realizzare un orologio digitale:

  • Arduino Nano V3
  • RTC DS1307
  • MAX7210 7 segmenti
  • Cavo del ponticello
  • USBmini
  • Consiglio di progetto

Biblioteca richiesta:

  • Filo
  • LedControl
  • RTClib

Passaggio 2: assemblare tutti i componenti

Assemblare tutti i componenti
Assemblare tutti i componenti

Se tutti i componenti sono stati ottenuti, ora è il momento di assemblare.

Vedere la descrizione qui sotto o vedere l'immagine sopra:

Arduino a RTC DS1307

GND => GND

+5V => VCC

A4 => SDA

A5 => SCL

Arduino a MAX7219

+5V => VCC

GND => GND

D12 => DIN

D11 => CLK

D10 => CS

Dopo aver installato tutti i componenti, passare alla sezione di programmazione.

Passaggio 3: programmazione

copia e incolla questo schizzo nello schizzo che hai realizzato. Dopodiché carica il programma sulla scheda 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("Impossibile trovare RTC"); mentre (1); } if (! rtc.isrunning()) { Serial.println("RTC NON è in esecuzione!"); // la riga seguente imposta l'RTC sulla data e l'ora in cui questo sketch è stato compilato // rtc.adjust(DateTime(F(_DATE_), F(_TIME_))); // Questa riga imposta l'RTC con una data e un'ora esplicite, ad esempio per impostare // 21 gennaio 2014 alle 3 del mattino che chiameresti: // rtc.adjust(DateTime(2014, 1, 21, 3, 0, 0)); } lc.shutdown(0, falso); lc.setIntensity(0, 8); lc.clearDisplay(0); }

ciclo vuoto() {

DateTime now = 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, '-', falso); lc.setDigit(0, 3, now.minute()%10, false); lc.setDigit(0, 4, now.minute()/10, false); lc.setChar(0, 5, '-', falso); lc.setDigit(0, 6, now.hour()%10, false); lc.setDigit(0, 7, now.hour()/10, false); }

if (ora.secondo() == 30 || ora.secondo() == 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); } }

Passaggio 4: risultato

Dopo che tutti i passaggi sono andati a buon fine, questo è il risultato che vedrai: (guarda il video)

ogni 31° al 40° secondo. 7 segmenti mostreranno la data. Ad eccezione di quel secondo, il segmento 7 mostrerà l'orologio

Consigliato: