Kazalo:

DS1307 Ura v realnem času RTC z Arduinom: 4 koraki
DS1307 Ura v realnem času RTC z Arduinom: 4 koraki

Video: DS1307 Ura v realnem času RTC z Arduinom: 4 koraki

Video: DS1307 Ura v realnem času RTC z Arduinom: 4 koraki
Video: FLProg7: часы реального времени и температура | ESP32 NodeMCU | Визуальное программирование для 2024, Junij
Anonim
DS1307 Ura v realnem času RTC z Arduinom
DS1307 Ura v realnem času RTC z Arduinom

V tem vodiču bomo spoznali uro v realnem času (RTC) in kako sta Arduino in ura v realnem času IC DS1307 sestavljena kot časovna naprava.

Ura v realnem času (RTC) se uporablja za spremljanje časa in vzdrževanje koledarja. Če želimo uporabiti RTC, ga moramo najprej programirati s trenutnim datumom in uro. Ko to storite, lahko registre RTC kadar koli preberete, da ugotovite uro in datum. DS1307 je RTC, ki deluje po protokolu I2C. Podatke iz različnih registrov je mogoče brati z dostopom do njihovih naslovov za branje prek komunikacije I2C.

Korak: Stvari, ki jih potrebujete

Stvari, ki jih potrebujete
Stvari, ki jih potrebujete
Stvari, ki jih potrebujete
Stvari, ki jih potrebujete
Stvari, ki jih potrebujete
Stvari, ki jih potrebujete

Za poučevanje potrebujete naslednje stvari:

Arduino uno

Ds1307 rtc modul

Mostične žice

3,7v kovanca

2. korak: Povezave

Povezave
Povezave
Povezave
Povezave

Prosimo, da sledite priloženi shemi v razdelku s slikami in vse povežete glede na sheme.

3. korak: Del za kodiranje

Kodiranje
Kodiranje

Programiranje Arduina za napajanje RTC s trenutnim datumom in uro; in branje datuma in časa iz RTC.

Tukaj bomo uporabljali knjižnico DS1307 Watterotta iz GitHub -a.

Prenesite to knjižnico od tukaj.:

Izvlecite knjižnico in dodajte mapo z imenom DS1307 v pot do mape knjižnic v Arduino IDE.

Ko je knjižnica dodana v IDE Arduino, odprite IDE in odprite primer skice z imenom Primer iz dodane knjižnice DS1307.

Beseda previdnosti: V skici primera se v nastavitveni zanki uporablja funkcija rtc.set (). Tej funkciji posredujte trenutne argumente datuma in časa, kot je omenjeno. V vzorčni skici bo ta izjava komentirana. Odkomentirajte ga in naložite skico. Ko je skica naložena, znova komentirajte izjavo in naložite skico. Če tega ne storite, se vsakič, ko se plošča Arduino UNO ponastavi ali vklopi po izklopu, znova in znova nastavita datum in čas, ki ju ne boste mogli natančno prebrati.

/* Primer DS1307 RTC (ura v realnem času)

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 Serial port* / Serial.begin (9600); while (! Serijski); /*počakajte, da se serijska vrata povežejo - potrebno le za Leonarda*/

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

/*samo enkrat nastavite datum+čas*/ rtc.set (0, 0, 8, 24, 12, 2014); /*08: 00: 00 24.12.2014 // sek, min, ura, dan, mesec, leto*/

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

/*zaženi RTC*/ rtc.start (); }

void loop () {uint8_t sec, min, ura, dan, mesec; uint16_t leto;

/*dobite čas iz RTC*/ rtc.get (& sec, & min, & hour, & day, & month, & year);

/*serijski izhod*/ Serial.print ("\ nTime:"); Serijski.tisk (ura, DEC); Serial.print (":"); Serijski.tisk (min, DEC); Serial.print (":"); Serial.print (sec, DEC);

Serial.print ("\ nDatum:"); Serial.print (dan, DEC); Serial.print ("."); Serial.print (mesec, DEC); Serial.print ("."); Serial.print (leto, DEC);

/*počakaj sekundo*/ zakasnitev (1000); }

Kopirajte zgornjo kodo in jo naložite na svojo ploščo arduino

4. korak: Pridobite si čas

Pridobivanje časa
Pridobivanje časa
Pridobivanje časa
Pridobivanje časa

Ko povežete vse skupaj in naložite kodo na svojo arduino ploščo, odprite serijski monitor v svojem arduino ideju, nato pa boste lahko na svojem serijskem monitorju dobili datum in čas, kot je moj, kot vidite, vidim svoj čas in čas datum na mojem serijskem monitorju, za demo izhod si oglejte zgornji izhod slike in se zabavajte, če v svoj projekt dodate uro RTC.

Priporočena: