KKM: RTC – REAL TIME CLOCK DS1307

Početnik si s Dasduinom. Ili s elektronikom? Za oko ti je zapeo određeni modul, ali ne znaš kako ga koristiti? Bez brige, tu je KKM! Kako Koristiti Module (KKM) je serija blog tutorijala tvrtke soldered na kojoj ćeš pronaći sve što ti treba kako bi započeo rad sa svojim omiljenim modulom. Tutorijali obuhvaćaju: tehničke karakteristike, princip rada, upute kako povezati modul s Dasduinom te osnovni kod. Sve ostalo prepuštamo tebi na maštu.
ŠTO JE RTC?
Real-Time Clock je elektronički uređaj koji vrlo precizno prati vrijeme. U ovom tutorialu baviti ćemo se novijim modelom DS3231SN.
RTC moduli uglavnom koriste kristal oscilator frekvencije 32.768 kHz, koja se koristi i u quartz satovima. U usporedni s DS1307, model DS3231 ima ugrađen TCXO (Temperature Compensated Crystal Oscillator), što donosi stabilnost koju s običnim oscilatorom ne bi mogli dobiti, prilikom promjene temperature. Zajedno čine cjelinu koja omogućuje dugotrajno i precizno pračenje vremena.
Karakteristike:
Napon: 3.3V – 5.5V
Struja: 170uA (stand-by 5.5V)
Komunikacija: 400kHz I2C (default address 0x68)
Temperatura: -40°C do +85°C (za SN model koji se nalazi na breakoutu u našoj ponudi)
Dimenzije: 38mm x 22mm x 14mm
ŠTO I KAKO RADI?
RTC prati sekunde, minute, sata, dan u tjednu, datum: dan u mjesecu, mjesec i godinu. Kada jednom postavimo vrijeme možemo pratiti kalendar sve do 2100. godine. To znači da se datum na kraju mjeseca automatski prebacuje, isto vrijedi i za prijestupne godine. Sat radi u 24 i 12 satnom formatu, ugrađena su i dva programibilna alarma. Modul i kontroler povezani su preko dvojsmerne I2C komunikacije. Sve potrebno za ovu komunikaciju nalazi se na breakoutu. Ukoliko imate potrebu za promjenom I2C adrese, možete to raditi povezivanje A0, A1 i A2 padova na breakoutu modula.
Baterija se koristi s modulom iz razloga sačuvanja postavljenog vremena. Kada sustav unutar DS3231 primjeti da je došlo do prekida stalnog izvora napajanja, prebacuje se na bateriju. Baterija koja odgovara breakoutu je CR2032, kapaciteta je 240mAh. Ista stvar se automatski obavlja i u suprotnom smjeru.
POVEZIVANJE S DASDUINOM
ARDUINO KOD
Preuzmite library ovdje.
Kod za postavljanje vremena:
#include "DS3231.h"
DS3231 rtc(SDA, SCL);
void
setup
()
{
rtc.begin();
rtc.setDOW(WEDNESDAY);
// postavite dan u tjednu
rtc.setTime(9, 17, 0);
// postavite vrijeme, 24h format (sat, minuta, sekunda)
rtc.setDate(17, 2, 2016);
// postavite datum (dan, mjesec, godina)
}
void
loop
()
{
}
#include "DS3231.h"
DS3231 rtc(SDA, SCL);
void
setup
()
{
Serial.begin(115200);
// ne zaboravite u Serial Monitoru postaviti BAUD rate na 115200
rtc.begin();
}
void
loop
()
{
// prikazuje dan u tjednu
Serial.print(
String
(rtc.getDOWStr())+
"\t"
);
// prikazuje datum
Serial.print(rtc.getDateStr());
Serial.print(
" -- "
);
// prikazuje vrijeme
Serial.println(rtc.getTimeStr());
// pauza 1s
delay
(1000);
}
Korišteni proizvodi
No products found