Sommario:

DS1307 Orologio in tempo reale RTC con Arduino: 4 passaggi
DS1307 Orologio in tempo reale RTC con Arduino: 4 passaggi

Video: DS1307 Orologio in tempo reale RTC con Arduino: 4 passaggi

Video: DS1307 Orologio in tempo reale RTC con Arduino: 4 passaggi
Video: Tutorial Arduino ITA 23: RTC (Real Time Clock) DS3231 2024, Novembre
Anonim
DS1307 Orologio in tempo reale RTC con Arduino
DS1307 Orologio in tempo reale RTC con Arduino

In questo tutorial, impareremo a conoscere Real Time Clock (RTC) e come Arduino e Real Time Clock IC DS1307 sono messi insieme come un dispositivo di temporizzazione.

L'orologio in tempo reale (RTC) viene utilizzato per monitorare l'ora e mantenere un calendario. Per utilizzare un RTC, è necessario prima programmarlo con la data e l'ora correnti. Fatto ciò, i registri RTC possono essere letti in qualsiasi momento per conoscere l'ora e la data. DS1307 è un RTC che funziona su protocollo I2C. I dati dei vari registri possono essere letti accedendo ai loro indirizzi per la lettura utilizzando la comunicazione I2C.

Passaggio 1: cose di cui hai bisogno

Cose di cui hai bisogno
Cose di cui hai bisogno
Cose di cui hai bisogno
Cose di cui hai bisogno
Cose di cui hai bisogno
Cose di cui hai bisogno

Queste sono le seguenti cose di cui hai bisogno per questo istruibile:

Arduino uno

Modulo rtc Ds1307

Ponticelli

Cella a bottone 3.7v

Passaggio 2: connessioni

Connessioni
Connessioni
Connessioni
Connessioni

Si prega di seguire gli schemi allegati nella sezione immagini e collegare tutto secondo gli schemi.

Passaggio 3: parte di codifica

Parte di codifica
Parte di codifica

Programmare Arduino per alimentare RTC con data e ora correnti; e leggendo la data e l'ora dall'RTC.

Qui useremo la libreria DS1307 di Watterott da GitHub.

Scarica questa libreria da qui.:

Estrai la libreria e aggiungi la cartella denominata DS1307 al percorso della cartella delle librerie di Arduino IDE.

Una volta che la libreria è stata aggiunta all'IDE Arduino, aprire l'IDE e aprire lo sketch di esempio denominato Esempio dalla libreria DS1307 aggiunta.

Parola di cautela: nello schizzo di esempio, nel ciclo di installazione, viene utilizzata la funzione rtc.set(). Passa gli argomenti di data e ora correnti come menzionato a questa funzione. Nello schizzo di esempio, questa affermazione sarà commentata. Decommenta e carica lo schizzo. Una volta caricato lo schizzo, decommenta di nuovo la dichiarazione e carica lo schizzo. In caso contrario, ogni volta che la scheda Arduino UNO si ripristina o viene accesa dopo lo spegnimento, la data e l'ora impostate verranno impostate più e più volte e non sarà possibile leggere l'ora e la data correnti esatte.

/* Esempio DS1307 RTC (orologio in tempo reale)

Uno A4 (SDA), A5 (SCL) Mega 20 (SDA), 21 (SCL) Leonardo 2 (SDA), 3 (SCL) */

#include "Wire.h"

#include "DS1307.h"

DS1307 rtc;

void setup() { /*init Porta seriale*/ Serial.begin(9600); while(!Seriale); /*attendere la connessione della porta seriale - necessaria solo per Leonardo*/

/*init RTC*/ Serial.println("Init RTC…");

/*imposta la data e l'ora solo una volta*/ rtc.set(0, 0, 8, 24, 12, 2014); /*08:00:00 24.12.2014 //sec, min, ora, giorno, mese, anno*/

/*stop/pausa RTC*/ // rtc.stop();

/*start RTC*/ rtc.start(); }

void loop() { uint8_t sec, min, ora, giorno, mese; uint16_t anno;

/*riceve l'ora da RTC*/ rtc.get(&sec, &min, &hour, &day, &month, &year);

/*output seriale*/ Serial.print("\nOra: "); Serial.print(hour, DEC); Serial.print(":"); Serial.print(min, DEC); Serial.print(":"); Serial.print(sec, DEC);

Serial.print("\nData: "); Serial.print(giorno, DIC); Serial.print("."); Serial.print(mese, DIC); Serial.print("."); Serial.print(anno, DEC);

/*aspetta un secondo*/ delay(1000); }

Copia il codice sopra e caricalo sulla tua scheda arduino

Passaggio 4: ottenere tempo

Ottenere tempo
Ottenere tempo
Ottenere tempo
Ottenere tempo

Dopo aver collegato tutto insieme e caricato il codice sulla tua scheda arduino, apri il monitor seriale nel tuo ide arduino e quindi sarai in grado di ottenere data e ora come mie nel monitor seriale come puoi vedere sono in grado di vedere il mio tempo e data nel mio monitor seriale, per l'output demo fai riferimento all'output dell'immagine sopra e divertiti ad aggiungere l'orologio RTC al tuo progetto.

Consigliato: