arduino ile saat yapımı / Circuit design Arduino İle Dijital Saat Mikroişlemciler Final Ödevi | Tinkercad

Arduino Ile Saat Yapımı

arduino ile saat yapımı

    Merhaba arkadaşlar bugünkü yazımda 4’lü 7 segment display kullanarak arduino ile dijital saat yapacağız. 4&#;lü 7 segment display hakkında bilgisi olmayan veya nasıl kullanıldığını bilmeyenler daha önce yazmış olduğum bu yazıma bakabilirsiniz.

Malzeme Listesi

Devre Şeması

    Devremiz aslında çok basit bir şekilde olacaktır. Devremizde bir adet arduino uno, bir adet dörtlü 7 segment display ve saat modülü kullanacağız. Saat modülünü ilk defa kullananlar bu yazımıza bakarak saat modülünün kullanımı ve saat ayarlanma işlemlerini yapabilir. Bu işlemleri yaptıktan sonra yapmamız gereken sadece devreyi kurup, arduino kodunu yüklemek. Normalde dörtlü 7 segment displayi arduino unoya bağlayınca pin sayısı 2 adet kalıyor. Bu projeyi yapmak için arduino mega gerekebilirdi ama ben analog pinlerini de kullanarak saat modülünü o şekilde bağladım. Bu sayede arduino uno ile uygulamamızı yapabileceğiz.

Uygulama Kodları

   Uygulama kodları aşağıdaki gibidir. Kodların ne işe yaradığını daha ayrıntılı anlamak için daha önce yazmış olduğum ve detaylıca anlatmış olduğum bu yazıma bakabilirsiniz. Buradaki kodların tek farklı ekstra olarak rtc saat modülümüzün kodları vardır. Daha önce yapmış olduğumuz RTC saat modülü kullanımı için bu yazıma bakabilirsiniz. Ekrana sayı yazdırma kısmında ise ilk önce saat bilgisini modülden okuma işlemini yapıp ile çarpıp daha sonra dakika bilgisini okuyup üstüne eklemek gerekiyor. Saati ekranda göstermek için 4 basamaklı bir sayıya çevirmek gerekiyor. Bu işlemler ile yapıp daha sonra int saat adında değişken oluşturuyoruz. Hesapladığımız bu değeri saat değişkenine aktarıp daha sonra da saat değişkenini ekrana yazdırıyoruz. Bu işlem her saniyede yapılıyor.

   Örnek olarak saatimiz olsun. Saat kısmını elde ediyoruz ve ile çarpıyoruz(12&#;). değerini elde ettik. Daha sonra ise değerine 40 ekleyerek olmasını sağlıyoruz. Yani 4 basamaklı bir sayı elde ediyoruz. Bu sayımızda 12&#;yi 40 geçiyor anlamına gelmektedir. seafoodplus.infober(saat,2) kısmındaki 2 sayısı da seafoodplus.infoı aktif etmiş oluyor. Saatimiz şeklinde gözüküyor. Bu ekranımızda iki nokta &#;:&#;  işareti olmadığı için biz nokta &#;.&#;  kullanarak şeklinde saatimizi gösterdik.

    Saat modülü ve 4&#;lü 7 segment displayı kullanmak için kütüphanelerin indirilmesi gereklidir. Bu kütüphaneleri buradan ulaşabilirsiniz ve kütüphane kurulumunda sorun yaşarsanız bu yazıma göz atabilirsiniz.

Uygulama Videosu

Arduino ile Dijital saat uygulamamız hakkında merak ettiklerinizi veya anlamadığınız şeyleri yorum olarak sorabilirsiniz. İyi çalışmalar dilerim 🙂

Yunus Emre EKE

seafoodplus.info

Merhabalar ben Yunus Emre Eke. Trakya Üniversitesi Bilgisayar Mühendisliği 4.Sınıf Öğrencisiyim. Uzun süredir yazılım ve elektronik ile uğraşıyorum. Arduino projelerimi paylaştığım instagram sayfasına profilimden göz atabilirsiniz.

Merhaba arkadaşlar ! Arduino dersleri serimizde proje yapmaya devam ediyoruz. Bu yazımızda sizlerle RTC saat modülünü kullanarak Arduino ile Dijital Saat projesi yapacağız. Bu projeyi yaparken LCD de kullanacağız !

Daha önceki yazımızda PIR sensörünün kullanımından bahsetmiştik >>> Arduino ile Hırsız Alarmı Yapalım !

RTC Arduino Saat Modülü Nedir? Nasıl Çalışır? DS Modeli

RTC&#;nin açılımı Real Time Clock yani Gerçek Zamanlı Saat&#;tir. RTC modülünün içerisinde gerçek zamanlı saat devrelerinde bulunan DS entegresi bulunur. Bu modül sayesinde saat bilgisini anlık ve sürekli olarak okuyabilmek mümkündür. RTC modülü yıl, ay, gün, saat, dakika ve saniye bilgilerini sürekli olarak içerisinde barındırmaktadır.

Arduino RTC Modülü

Haydi, Arduino LCD Dijital Saat Yapımına Başlayalım

Gerekli Malzemeler:

Projedeki Malzemeler Bu Sette. Şimdi İncele >

Arduino Dijital Saat Devresi

RTC Modülü ile Dijital Saat Arduino Kodu

Hadi öyleyse RTC modülü ve LCD kullanacağımız Dijital Saat uygulamamız için gereken Arduino kodunu yazmaya başlayalım. Yazılım işlemini yapmadan önce gerekli kütüphaneyi buradan indirebilirsiniz.

#include <LiquidCrystal.h> //LCD kütüphanemizi başlatıyoruz. #include <RealTimeClockDSh> //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() { seafoodplus.info(16, 2); //LCD ekranımızın en-boy oranını ayarlıyoruz. } void loop() { seafoodplus.infoTime(); //RTC'den zamanı okuyoruz seafoodplus.info(); //Başlamadan önce ekranı temizliyoruz. seafoodplus.infosor(0, 0); //Ekranın ilk satır ilk sütunundan yazmaya başlıyoruz. seafoodplus.info(seafoodplus.infoonth); //Günü ekrana bastırıyoruz. seafoodplus.info("/"); seafoodplus.info(seafoodplus.info); //Ayı ekrana bastırıyoruz. seafoodplus.info("/"); seafoodplus.info(seafoodplus.info); //Yılı ekrana bastırıyoruz seafoodplus.infosor(0, 1); //LCD'nin 2. satır 1. sütunundan yazmaya başlıyoruz. seafoodplus.info(seafoodplus.info); //Saati ekrana bastırıyoruz. seafoodplus.info(":"); seafoodplus.info(seafoodplus.infos); //Dakikayi ekrana bastırıyoruz. seafoodplus.info(":"); seafoodplus.info(seafoodplus.infos); //Saniyeyi ekrana bastırıyoruz. delay(); //1 saniye bekleme. }

Projelerinizde zamana bağlı işlem yaptırmak istiyor olabilirsiniz. Bunun için gerçek zamanlı saat modülü yani RTC(Real Time Clock) kullanmanız seafoodplus.info yazımızda anlatacağımız modül ise DS RTC modülüdür. Bu modül ile mesela her 10 dakikada bir fan açıp kapatmak veya lamba açıp kapatmak veya herhangi bir işlemi gecikmeli olarak tetikletebilirsiniz.

Daha somut örnekler verecek olursak; su pompasını 1 saat çalıştırmak, arduino ile saat yapıp alarm kurmak veya ev otomasyonlarında her 2 dakikada bir ev verilerini bulut sisteme yüklemek gibi olabilir. Bu sizin yapmak istediğiniz işlemlere göre çoğaltılabilir. İnternette bir çok rtc modülü bulunmaktadır. Ama biz ucuz olması sebebi ile bu yazımızda DS RTC modülünü anlatacağız.

DS RTC Özellikleri

  • Gerçek Zamanlı Saat Saniye, Dakika, Saat, Ayın Tarihi, Ay, Haftanın Günü ve Yılı Sayar.
  • Bu modül sadece yılına kadar geçerlidir.
  • 31 x 8 Pil Destekli Genel Amaçlı RAM
  • Basit 3 Telli Arayüz
  • TTL-Uyumlu (VCC = 5V)
  • Saat veya RAM Verilerini okumak veya yazmak için Tek Baytlı veya Çoklu Baytlı (Seri Serileme Modu) Veri Aktarımı
  • V &#; V çalışma gerilimi
  • V&#;da nA&#;dan az kullanır
  • °C ila +85°C arasında çalışır.

DS RTC Pin Şeması

Bu modülün 5 pini vardır:

  • VCC: Modül besleme gerilimi– 5V
  • GND: Ground
  • CLK: Clock pin
  • DAT: Data pin
  • RST: Reset

Bu modülün pin çıkışını aşağıdaki resimde görebilirsiniz.

DS RTC Modülü Pin Şeması

Projede Gerekli Malzemeler:

Arduino İle DS RTC Bağlantı Şeması

Aşağıdaki devre Arduino&#;yu DS modülüne nasıl bağlamanız gerektiğini göstermektedir:

Arduino İle DS RTC Bağlantı Şeması

DS RTC Kütüphanesi

Aşağıdaki butondan projede kullanılan kütüphaneyi indirebilirsiniz:

DS RTC Kodu

Aşağıdaki kod, DS&#;yi ayarlamanıza ve ardından seri monitörde tarih ve saati görüntülemenize izin verecektir.

Lütfen aşağıdaki kodu dikkatlice okuyunuz:

Kodumuzu ilk arduinoya yüklerken yukarıdaki koddda arduinoya güncel tarihimizi ve saat bilgilerimizi giriyoruz.

Kodumuzu 1. kez yüklememizden sonra yukarıdaki gibi tarih ve saat ayarlama kodumuzu yorum satırı yaparak arduinomuza tekrar yüklüyoruz.

Kodumuzu arduinoya yükledikten sonra seri monitörümüzü açtığımızda bize tarih ve saat bilgilerimizi verdiğini göreceksiniz.

Bunu beğen:

BeğenYükleniyor

nest...

batman iftar saati 2021 viranşehir kaç kilometre seferberlik ne demek namaz nasıl kılınır ve hangi dualar okunur özel jimer anlamlı bayram mesajı maxoak 50.000 mah powerbank cin tırnağı nedir