Ads Top

ARDUNİO KULLANARAK LCD SAAT YAPIMI



AYAR KISMI

[code]
#include <virtuabotixRTC.h>                            //Kütüphanemizi ekliyoruz.
int CLK_PIN = 6;                                       //6. pini clock pini olarak tanımladık
int DAT_PIN = 7;                                       //7. pini data pini olarak tanımladık
int RST_PIN = 8;                                       //8. pini reset pini olarak tanımladık.
virtuabotixRTC myRTC(CLK_PIN, DAT_PIN, RST_PIN);      // Kütüphanemizi pinlere atıyoruz.

void setup() {
 Serial.begin(9600);                                //Seri haberleşmeyi başlatıyoruz.
 myRTC.setDS1302Time(0, 10, 22, 2, 2, 2, 2021);     //Saati saniye, dakika, saat, haftanın günü, ayın günü, ay, yıl olarak ayarlıyoruz.
}

void loop() {
 myRTC.updateTime();                                   //RTC'den zamanı okuyoruz

 Serial.print("Tarih / Saat: ");                       //Aldığımız verileri Serial Porta bastırıyoruz.
 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);

 delay(1000);
[/code]


LCD KISMI

[code]
#include <LiquidCrystal.h>                              //LCD kütüphanemizi başlatıyoruz.
#include <virtuabotixRTC.h>                             //RTC kütüphanemizi ekliyoruz.

int CLK_PIN = 6;                                        //6. pini clock pini olarak tanımladık
int DAT_PIN = 7;                                        //7. pini data pini olarak tanımladık
int RST_PIN = 8;                                        //8. pini reset pini olarak tanımladık.
virtuabotixRTC myRTC(CLK_PIN, DAT_PIN, RST_PIN);        // Kütüphanemizi pinlere atıyoruz.4
int rs = 12, en = 11, d4 = 5, d5 = 4, d6 = 3, d7 = 2;   //LCD'nin pin değişkenlerini tanımlıyoruz.
LiquidCrystal lcd(rs, en, d4, d5, d6, d7);              //LCD'nin pin bağlantılarını ayarlıyoruz.

void setup() {
  lcd.begin(16, 2);                                     //LCD ekranımızın en-boy oranını ayarlıyoruz.                                
}
void loop() {
  
  myRTC.updateTime();                                   //RTC'den zamanı okuyoruz
  
  lcd.clear();                                          //Başlamadan önce ekranı temizliyoruz.
  lcd.setCursor(0,0);                                   //Ekranın ilk satır ilk sütunundan yazmaya başlıyoruz.
  lcd.print(myRTC.dayofmonth);                          //Günü ekrana bastırıyoruz.
  lcd.print("/");
  lcd.print(myRTC.month);                               //Ayı ekrana bastırıyoruz.
  lcd.print("/");
  lcd.print(myRTC.year);                                //Yılı ekrana bastırıyoruz
  lcd.setCursor(0, 1);                                  //LCD'nin 2. satır 1. sütunundan yazmaya başlıyoruz.
  lcd.print(myRTC.hours);                               //Saati ekrana bastırıyoruz.
  lcd.print(":");
  lcd.print(myRTC.minutes);                             //Dakikayi ekrana bastırıyoruz.   
  lcd.print(":");
  lcd.print(myRTC.seconds);                             //Saniyeyi ekrana bastırıyoruz.
  delay(1000);                                          //1 saniye bekleme.
}

[/code]



Bu projemizde LCD saat yaptık ama saat modülünün doğru şekilde çalışmaması ve kullanılan ekranın dönüştürücüsü olmaması nedeniyle çok verimli bir proje olduğunu düşünmüyorum.
Ama bu projeyi yaparken bir veriyi ekrana yazdırmayı öğrenmiş oluyoruz. Fakat bunun için saat modülü yerine farklı bir modül kullanılabilir.

Hiç yorum yok:

XBee 3 serisi Arduino Haberleşmesi

Yiğit Mert DEMİR isimli yazarın XBEE 3 Serisi Arduino Haberleşmesi başlıklı eseri bu Creative Commons Alıntı-GayriTicari-Türetilemez 4.0...

Blogger tarafından desteklenmektedir.