Arduino DS1302 RTC Modülü 128×64 I2C OLED Ekran ile Nasıl Kullanılır?

Bu yazıda yaygın RTC modüllerinden biri olan DS1302‘nin Arduino ile nasıl kullanılacağını öğrenecek ve I2C OLED ekran ile birleştirerek masa saati uygulaması yapacağız.

DS1302 ve I2C OLED ekranın tek başlarına nasıl kullanıldıklarını daha önce uzun uzun anlatmıştık. Bu bölümde bu iki kodu birleştirirken yeni bir kütüphane keşfedeceğiz.

RTC bir kısaltma, Real Time Clock demek. Yani Gerçek Zamanlı Saat. Peki böyle bir modüle neden ihtiyacımız var? Bunun iki sebebi var; İlki Arduino’nun bir kez ayarlanan saati sayabilmesi için sürekli güç almasının gerekmesi. Elektrikler kesilirse her şey gider, değil mi?

İkincisi ise Arduino mikrokontrolcüsünün saati doğru bir şekilde saymak için yeterince hassas olmaması. Evet, o kadar kabiliyetli bir mikrokontrolcü bile zamanı sayarken ciddi kaymalar yaşatabilir.

Bu sorun RTC adı verilen ve üzerlerinde CR2032 kodlu, halk arasında para pil olarak da bilinen bir pil bulunan modüllerle çözülüyor. Bilgisayarımızın anakartında da böyle bir pil görmüş olmalıyız. İşte o pil bilgisayarımız kapalıyken saati ve BIOS gibi temel ayarları hafızada tutuyor.

RTC modülü üzerindeki piliyle birlikte sürekli açık kalıyor ve Arduino’nun gücü kesilse bile saati içinden saymaya devam ediyor!

DS1302’yi Arduino’ya 5 adet pini üzerinden bağlıyoruz. VCC pini Arduino üzerinde 5V’a ve GND tahmin edebileceğimiz gibi GND’ye bağlanıyor. CLK, DAT ve RST pinleri ise Arduino’nun dijital pinlerine bağlanıyor.

Bu tür modüller genelde pille birlikte gelmezler. Bu yüzden modülden sipariş verirken yanında bir de CR2032 kodlu pillerden sipariş etmeyi unutmamalıyız. Pili modüle takalım ve sketch koduna geçelim.

DS1302 RTC modülünü kolay bir şekilde kullanabilmek için bir kütüphane kullanmak akıllıca. Bunun için Michael Miller’in Rtc by Makuna kütüphanesini kullanıyoruz. Kütüphaneyi Arduino IDE’nin ana menüsünden Araçlar > Kütüphaneleri Yönet… bölümüne girip Rtc by Makuna kelimesini aratarak ekleyebiliriz.

Bu sketch’te ek olarak SSD1306 adlı yaygın kullanılan Arduino kütüphanesini kullanacağız. Kütüphaneyi Arduino IDE’nin ana menüsünden Araçlar > Kütüphaneleri Yönet… bölümüne girip SSD1306 kelimesini aratarak Adafruit tarafından hazırlanmış versiyonu kurarak ekleyebiliriz. Kütüphane kurulumu esnasında Adafruit GFX gibi bazı ek kütüphanelerin de kurulumu istenebilir. Hepsini kuralım.

Bu örnekte DS1302’nin CLK pinini 4, DAT pinini 5. ve RST pinini 6. Arduino pinlerine bağladım. I2C OLED ekranı da VCC pini 5V, GND pini GND, SDA pini A4 ve SCL pini de A5 pinlerine bağlanacak şekilde bağladım. Farklı bir bağlantı yapmak isterseniz DS1302’nin 3 veri pinini kod içinden değiştirebilirsiniz.

Sketch kodunu kopyalamak için pencerenin sağ üst köşesindeki butona tıklayabilirsiniz.

NOT: Arduino’ya tekrar güç verdikten sonra siyah ekran alıyorsanız RESET butonuna basmayı deneyin.

Arduino’da iyi olmak için öncelikle elektronikte iyi olmak gerekir. Türkiye’nin en iyi temel elektronik eğitim seti ARDUINO ÖNCESİ TEMEL ELEKTRONİK EĞİTİM VE DENEY SETİ‘ni keşfedin. Gereksiz bilgilerden arındırılmış basit ve eğlenceli anlatımla ELEKTRONİK öğrenin ve Arduino’ya METE HOCA farkıyla güçlü başlayın!

ÖZGÜN ve KULLANIŞLI projeler yapabilmek için ARDUINO’yu doğru öğrenmek gerekir. Arduino’ya güçlü başlamanın en iyi yolu ARDUINO’YA GÜÇLÜ BAŞLANGIÇ EĞİTİM VE PROJE SETİ‘dir. Arduino Uno üzerine kurulu olan set ile bu müthiş geliştirme platformunu tüm detaylarıyla anlayacak, başka hiçbir yerde bulamayacağınız inceliklerini öğrenecek ve en sık kullanılan Arduino sensör ve modüllerine aşina olacaksınız.