Öncelikle DS1302 bağlantısını yapacağız. Bağlantıyı aşağıdaki şekile göre yapacağız.
+5V : Vcc
GND : GND
SCLK : CLK (bacak 5)
I/O : DAT (bacak 4)
CE : RST (bacak 3)
Not: Bacak numaralarını isteğinize göre değiştirebilirsiniz. Ben burada 3,4,5 i kullanıyorum.
Bağlantılar tamamsa kodumuzu yazalım.
Ama önce burada gerekli olan kütüphaneyi indirmemiz gerekiyor. İndirmek için şu adrese gidin : https://virtuabotix-virtuabotixllc.netdna-ssl.com/core/wp-content/uploads/2014/01/virtuabotixRTC.zip veya indirmek için tıklayınız.
#include <virtuabotixRTC.h>
// Creation of the Real Time Clock Object
//SCLK -> 5, I/O -> 4, CE -> 3
virtuabotixRTC myRTC(5, 4, 3);
void setup() {
Serial.begin(9600);
// Dilediğiniz tarihi aşağıda belirtilen biçimde girebiliyorsunuz. Ben örnek olarak
// bugünün tarihini girdim.
// saniye, dakika, saat, haftanın günü, ayın günü, ay, yıl (Not: haftanın günü 1:pazartesiden başlıyor
myRTC.setDS1302Time(00, 40, 1,7, 27, 11, 2016);
}
void loop() {
myRTC.updateTime();
// Şimdi değerleri okuyalım
Serial.print("Şuanki Tarih / Saat : ");
Serial.print(myRTC.dayofmonth);
Serial.print("/");
Serial.print(myRTC.month);
Serial.print("/");
Serial.print(myRTC.year);
Serial.print(" ");
Serial.print(myRTC.hours);
Serial.print(":");
Serial.print(myRTC.minutes);
Serial.print(":");
Serial.println(myRTC.seconds);
// 3 saniye gecikme veriyoruz.
delay( 3000);
}
Örneğimizin seri porttan alınan çıktısı :
First, we will do the DS1302 pin connections. We do the connections according to the image below.
+5V : Vcc
GND : GND
SCLK : CLK (pin 5)
I/O : DAT (pin 4)
CE : RST (pin 3)
Note: You can change the pin numbers as you want. I used pin3,4,5 here.
Lets write code if pin connections ok.
But first you need to download the library. You can go to this address: https://virtuabotix-virtuabotixllc.netdna-ssl.com/core/wp-content/uploads/2014/01/virtuabotixRTC.zip or click here to download
#include <virtuabotixRTC.h>
// Creation of the Real Time Clock Object
//SCLK -> 5, I/O -> 4, CE -> 3
virtuabotixRTC myRTC(5, 4, 3);
void setup() {
Serial.begin(9600);
// Dilediğiniz tarihi aşağıda belirtilen biçimde girebiliyorsunuz. Ben örnek olarak
// bugünün tarihini girdim.
// saniye, dakika, saat, haftanın günü, ayın günü, ay, yıl (Not: haftanın günü 1:pazartesiden başlıyor
myRTC.setDS1302Time(00, 40, 1,7, 27, 11, 2016);
}
void loop() {
myRTC.updateTime();
// Şimdi değerleri okuyalım
Serial.print("Şuanki Tarih / Saat : ");
Serial.print(myRTC.dayofmonth);
Serial.print("/");
Serial.print(myRTC.month);
Serial.print("/");
Serial.print(myRTC.year);
Serial.print(" ");
Serial.print(myRTC.hours);
Serial.print(":");
Serial.print(myRTC.minutes);
Serial.print(":");
Serial.println(myRTC.seconds);
// 3 saniye gecikme veriyoruz.
delay( 3000);
}
Screen shot after run:

