Taula de continguts:

Rellotge RTC en temps real DS1307 amb Arduino: 4 passos
Rellotge RTC en temps real DS1307 amb Arduino: 4 passos

Vídeo: Rellotge RTC en temps real DS1307 amb Arduino: 4 passos

Vídeo: Rellotge RTC en temps real DS1307 amb Arduino: 4 passos
Vídeo: ✅ Temperatura, Día de la Semana, Hora, Fecha RTC - DS3231 2024, Desembre
Anonim
Rellotge RTC en temps real DS1307 amb Arduino
Rellotge RTC en temps real DS1307 amb Arduino

En aquest tutorial, aprendrem sobre el rellotge en temps real (RTC) i sobre com es combinen Arduino i rellotge en temps real IC DS1307 com a dispositiu de sincronització.

El rellotge en temps real (RTC) s’utilitza per controlar el temps i mantenir un calendari. Per poder utilitzar un RTC, primer cal programar-lo amb la data i l’hora actuals. Un cop fet això, es poden llegir els registres RTC en qualsevol moment per conèixer l’hora i la data. DS1307 és un RTC que funciona amb protocol I2C. Les dades de diversos registres es poden llegir accedint a les seves adreces per llegir mitjançant la comunicació I2C.

Pas 1: coses que necessiteu

Coses que necessiteu
Coses que necessiteu
Coses que necessiteu
Coses que necessiteu
Coses que necessiteu
Coses que necessiteu

Aquestes són les següents coses que necessiteu per a aquest instructable:

Arduino uno

Mòdul rsc DS1307

Filferros de pont

Cèl·lula de moneda de 3,7 v

Pas 2: connexions

Connexions
Connexions
Connexions
Connexions

Seguiu els esquemes adjunts a la secció d'imatges i connecteu-ho tot d'acord amb els esquemàtics.

Pas 3: Part de codificació

Part de codificació
Part de codificació

Programació d'Arduino per alimentar RTC amb data i hora actuals; i llegint la data i l'hora des del RTC.

Aquí utilitzarem la biblioteca DS1307 de Watterott de GitHub.

Descarregueu aquesta biblioteca des d’aquí.:

Extraieu la biblioteca i afegiu la carpeta anomenada DS1307 al camí de la carpeta de biblioteques de l'IDE Arduino.

Un cop s'ha afegit la biblioteca a l'IDE Arduino, obriu l'IDE i obriu l'esbós d'exemple anomenat Exemple de la biblioteca DS1307 afegida.

Avís de precaució: a l'esbós d'exemple, en el bucle de configuració, s'utilitza la funció rtc.set (). Passeu els arguments de data i hora actuals tal com s'esmenta a aquesta funció. A l'esbós d'exemple, es comentarà aquesta afirmació. Descomenteu-lo i pengeu l’esbós. Un cop s'ha carregat l'esbós, torneu a comentar l'extracte i pengeu l'esbós. Si no es fa això, cada vegada que la placa Arduino UNO es reinicia o s’encén després d’apagar-se, la data i l’hora que definiu s’establiran una i altra vegada i no podreu llegir l’hora i la data exactes actuals.

/ * Exemple DS1307 RTC (temps real)

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 Port sèrie * / Serial.begin (9600); mentre que (! sèrie); / * espereu que es connecti el port sèrie: només és necessari per a Leonardo * /

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

/ * només configureu la data i l'hora una vegada * / rtc.set (0, 0, 8, 24, 12, 2014); / * 08: 00: 00 24.12.2014 // seg, mín, hora, dia, mes, any * /

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

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

bucle buit () {uint8_t seg, min, hora, dia, mes; uint16_t any;

/ * obtenir temps de RTC * / rtc.get (& seg, & min, & hora, & dia, & mes, i any);

/ * sortida de sèrie * / Serial.print ("\ nHora:"); Serial.print (hora, DEC); Serial.print (":"); Serial.print (min, DEC); Serial.print (":"); Serial.print (sec, DEC);

Serial.print ("\ nData:"); Serial.print (dia, DEC); Serial.print ("."); Serial.print (mes, DEC); Serial.print ("."); Serial.print (any, DEC);

/ * espereu un segon * / delay (1000); }

Copieu el codi anterior i pengeu-lo a la vostra placa arduino

Pas 4: Obtenir temps

Obtenir temps
Obtenir temps
Obtenir temps
Obtenir temps

Després de connectar-ho tot i carregar el codi a la vostra placa arduino, obriu el monitor sèrie al vostre ide arduino i, a continuació, podreu obtenir la data i l'hora com a meves al vostre monitor sèrie, ja que podeu veure el meu Time & data al meu monitor sèrie, per a la sortida de demostració, consulteu la sortida de la imatge anterior i divertiu-vos afegint un rellotge RTC al vostre projecte.

Recomanat: