I2C 16x2 LCD Ekran Nedir? Arduino ile I2C LCD Ekran Kullanımı
I2C 16x2 LCD ekran, Arduino ve mikrodenetleyici projelerinde yazı, sayı, sensör değeri ve sistem durumu göstermek için kullanılan pratik bir ekran modülüdür. 16x2 ifadesi, ekranın 2 satırdan oluştuğunu ve her satırda 16 karakter gösterebildiğini ifade eder.
Normal 16x2 LCD ekranlar Arduino’ya bağlanırken çok sayıda pin ve kablo gerektirir. I2C modüllü LCD ekranlarda ise bağlantı çok daha kolaydır. Ekran yalnızca VCC, GND, SDA ve SCL olmak üzere 4 pin üzerinden bağlanabilir.
Bu yazıda I2C 16x2 LCD ekranın ne olduğunu, nasıl çalıştığını, pin yapısını, Arduino UNO ile bağlantısını, örnek kodunu ve sık karşılaşılan sorunları adım adım inceleyeceğiz.
I2C 16x2 LCD Ekran Nedir?
LCD, “Liquid Crystal Display” yani sıvı kristal ekran anlamına gelir. Arduino projelerinde kullanılan 16x2 LCD ekranlar karakter tabanlı ekranlardır. Bu ekranlar grafik çizmekten çok metin, rakam, ölçüm değeri ve kısa sistem mesajları göstermek için kullanılır.
I2C 16x2 LCD ekran, standart 16x2 LCD panelin arkasına eklenen I2C dönüştürücü modül sayesinde daha az kabloyla kullanılabilen LCD ekran türüdür. Bu modül sayesinde Arduino ile LCD ekran arasında veri aktarımı SDA ve SCL hatları üzerinden yapılır.
I2C LCD Ekran Nasıl Çalışır?
I2C LCD ekran, Arduino’dan aldığı verileri ekranda karakter olarak gösterir. Arduino kodunda yazdırılmak istenen metin veya sayı belirlenir. Bu veri I2C haberleşme protokolü üzerinden LCD ekranın arkasındaki dönüştürücü modüle gönderilir.
I2C haberleşmede temel olarak iki hat kullanılır:
- SDA: Veri hattıdır. Arduino ile LCD arasında veri taşır.
- SCL: Saat sinyali hattıdır. Veri aktarımının zamanlamasını belirler.
Bu yapı sayesinde LCD ekranı kontrol etmek için Arduino üzerinde çok sayıda dijital pin kullanmaya gerek kalmaz. Özellikle sensör, röle, buzzer, motor sürücü veya buton gibi başka parçaların da kullanıldığı devrelerde pin tasarrufu sağlar.
I2C LCD Ekran Kullanım Videosu
I2C LCD ekranın Arduino ile bağlantısını, kütüphane kurulumunu ve örnek kod kullanımını aşağıdaki videodan izleyebilirsiniz:
16x2 LCD Ekran Ne Anlama Gelir?
16x2 LCD ekran ifadesindeki 16, her satırda 16 karakter gösterilebildiğini ifade eder. 2 ise ekranın 2 satırdan oluştuğunu gösterir.
Yani bu ekran aynı anda toplam 32 karakter gösterebilir. Örneğin ekranda şu şekilde bir yazı gösterilebilir:
Robomer
I2C LCD Test
Bu yapı; sıcaklık değeri, nem değeri, mesafe bilgisi, sayaç değeri, menü yazısı veya sistem durumu gibi kısa bilgileri göstermek için oldukça kullanışlıdır.
I2C LCD Ekranın Yapısı
I2C 16x2 LCD ekran temel olarak LCD panel ve I2C dönüştürücü modülden oluşur. LCD panel yazıların göründüğü ana ekrandır. I2C modülü ise Arduino ile ekran arasında haberleşmeyi kolaylaştırır.
| Bölüm | Görevi |
|---|---|
| 16x2 LCD Panel | Yazı, sayı ve karakterlerin göründüğü ana ekrandır. |
| I2C Dönüştürücü Modül | LCD ekranın Arduino ile SDA ve SCL hatları üzerinden haberleşmesini sağlar. |
| Kontrast Potansiyometresi | Ekrandaki yazıların görünürlüğünü ayarlamak için kullanılır. |
| Arka Işık | Ekranın düşük ışıklı ortamlarda daha rahat okunmasını sağlar. |
I2C LCD Ekran Pinleri
I2C LCD ekran üzerinde genellikle 4 pin bulunur. Bu pinler güç bağlantısı ve I2C haberleşme için kullanılır.
| LCD Pini | Görevi |
|---|---|
| GND | Toprak bağlantısıdır. |
| VCC | Ekranın besleme girişidir. |
| SDA | I2C veri hattıdır. |
| SCL | I2C saat hattıdır. |
Arduino ile I2C LCD Kullanımı İçin Gerekli Malzemeler
| Gerekli Malzeme | Ürün Linki |
|---|---|
| Arduino UNO R3 | Arduino UNO R3 Klon + USB Kablo |
| I2C 16x2 LCD Ekran | 16x2 Mavi LCD Ekran - I2C Lehimli |
| Breadboard | Büyük Breadboard 830 Pin |
| Jumper Kablo | 40 Adet Erkek-Dişi Jumper Kablo 20cm |
Arduino UNO ile I2C LCD Ekran Bağlantısı
Arduino UNO üzerinde I2C haberleşme pinleri A4 ve A5 pinleridir. Bu nedenle LCD ekranın SDA pini Arduino’nun A4 pinine, SCL pini ise A5 pinine bağlanır.
| I2C LCD | Arduino UNO |
|---|---|
| GND | GND |
| VCC | 5V |
| SDA | A4 |
| SCL | A5 |
I2C LCD Kütüphanesi Nasıl Yüklenir?
Arduino ile I2C LCD ekran kullanmak için genellikle LiquidCrystal_I2C kütüphanesi kullanılır. Arduino IDE üzerinden kütüphane yüklemek için şu adımlar izlenebilir:
- Arduino IDE açılır.
- Library Manager bölümüne girilir.
- Arama kısmına LiquidCrystal I2C yazılır.
- Uygun kütüphane yüklenir.
- Kod içerisine Wire.h ve LiquidCrystal_I2C.h kütüphaneleri eklenir.
I2C LCD Adresi: 0x27 ve 0x3F
I2C LCD ekranların çalışabilmesi için kod içerisinde ekranın I2C adresi doğru tanımlanmalıdır. En yaygın I2C LCD adresleri 0x27 ve 0x3F değerleridir.
Çoğu I2C LCD ekran 0x27 adresiyle çalışır. Ancak bazı modellerde adres 0x3F olabilir. Ekranın ışığı yanıyor fakat yazı görünmüyorsa veya ekrana veri gelmiyorsa kod içerisindeki adres değiştirilerek tekrar denenebilir.
LiquidCrystal_I2C lcd(0x27, 16, 2);
Ekran çalışmazsa şu şekilde denenebilir:
LiquidCrystal_I2C lcd(0x3F, 16, 2);
Arduino I2C LCD Kod Örneği
Aşağıdaki kod, I2C LCD ekranın çalışıp çalışmadığını test etmek için kullanılabilir. Kod yüklendiğinde LCD ekranın ilk satırında “Robomer”, ikinci satırında ise “I2C LCD Test” yazısı görünmelidir.
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// LCD adresi genellikle 0x27 veya 0x3F olur.
// Ekran çalışmazsa 0x27 yerine 0x3F deneyebilirsiniz.
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup() {
lcd.init(); // LCD ekranı başlat
lcd.backlight(); // LCD arka ışığını aç
lcd.setCursor(0, 0);
lcd.print("Robomer");
lcd.setCursor(0, 1);
lcd.print("I2C LCD Test");
}
void loop() {
// Bu örnekte sürekli tekrar eden bir işlem yoktur.
}
Kodun Çalışma Mantığı
İlk olarak I2C haberleşmesi ve LCD kontrolü için gerekli kütüphaneler projeye dahil edilir:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
Daha sonra LCD ekranın adresi, sütun sayısı ve satır sayısı tanımlanır:
LiquidCrystal_I2C lcd(0x27, 16, 2);
lcd.init() komutu LCD ekranı başlatır. lcd.backlight() komutu ekranın arka ışığını açar. lcd.setCursor() komutu yazının ekranda hangi satır ve sütundan başlayacağını belirler.
Örneğin:
lcd.setCursor(0, 0);
lcd.print("Robomer");
Bu komut, birinci satırın ilk karakterinden başlayarak ekrana “Robomer” yazdırır. LCD ekranlarda satır sayımı 0’dan başlar. Yani birinci satır 0, ikinci satır 1 olarak kullanılır.
I2C LCD Ekran Arduino Örnek Kodları
I2C LCD ekran test kodu, adres tarama kodu ve temel ekran yazdırma örneklerine GitHub deposu üzerinden erişebilirsiniz.
I2C LCD Ekran Kullanırken Sık Yapılan Hatalar
- LCD ışığı yanıyor ama yazı görünmüyor: LCD ekranın arkasındaki küçük kontrast potansiyometresi tornavida ile yavaşça çevrilmelidir. Yazı çok silikse veya sadece kutucuklar görünüyorsa sorun genellikle kontrast ayarıdır.
- Ekranda hiçbir şey görünmüyor: VCC, GND, SDA ve SCL bağlantıları kontrol edilmelidir. Arduino UNO’da SDA pini A4, SCL pini ise A5’tir.
- Kod doğru ama ekran çalışmıyor: LCD adresi yanlış olabilir. Kodda 0x27 yerine 0x3F denenmelidir.
- Yazılar eksik veya bozuk görünüyor: Yazdırılan metinlerin 16 karakter sınırını aşmamasına dikkat edilmelidir. Ayrıca kullanılan LiquidCrystal_I2C kütüphanesi farklı bir sürümle değiştirilebilir.
- Ekranda eski yazılar kalıyor: Satır sonlarına boşluk eklenebilir veya gerekli durumlarda lcd.clear() komutu kullanılabilir. Ancak lcd.clear() komutunu sürekli kullanmak ekranda titremeye neden olabilir.
I2C LCD Ekran ile Neler Yapılabilir?
I2C LCD ekran, Arduino projelerinde kullanıcıya bilgi göstermek için oldukça kullanışlıdır. Sensörlerden alınan veriler, sayaç değerleri, alarm durumları veya sistem mesajları bu ekran üzerinde gösterilebilir.
- Sıcaklık ve nem göstergesi
- Mesafe ölçer ekranı
- Dijital termometre
- Toprak nem takip ekranı
- Gaz sensörü uyarı ekranı
- Sayaç ve kronometre uygulamaları
- Menülü Arduino uygulamaları
- Servo motor açı göstergesi
- Röle durum ekranı
- Akıllı ev kontrol panelleri
Robomer’de Bulabileceğiniz İlgili Ürünler
16x2 Mavi LCD Ekran - I2C Lehimli
Arduino projelerinde yazı, ölçüm değeri ve sistem durumu göstermek için kullanılan, üzerinde I2C modülü lehimli gelen pratik LCD ekran modelidir.
Ürünü İncele
20x4 Karakter LCD Ekran - Mavi
Daha fazla satır ve karakter alanı gereken uygulamalarda tercih edilebilen, 4 satır ve 20 karakter gösterim alanına sahip LCD ekran modelidir.
Ürünü İncele
16x2 LCD Ekran Yeşil
2 satır ve 16 karakter gösterim alanına sahip, Arduino ve mikrodenetleyici projelerinde kullanılabilen klasik karakter LCD ekran modelidir.
Ürünü İncele
Su Seviye Alarm Proje Seti
Arduino, LCD ekran, sensör ve temel bağlantı elemanlarını birlikte kullanarak uygulamalı öğrenme yapmak isteyen kullanıcılar için hazırlanmış proje setidir.
Proje Setini İnceleSonuç
I2C 16x2 LCD ekran, Arduino projelerinde kullanıcıya bilgi göstermek için en pratik ekran modüllerinden biridir. Sadece 4 kabloyla bağlanabilmesi sayesinde bağlantı karmaşasını azaltır ve özellikle başlangıç seviyesi uygulamalarda büyük kolaylık sağlar.
Arduino UNO ile birlikte kullanıldığında sıcaklık, nem, mesafe, seviye, sayaç, alarm ve sistem durumu gibi birçok veri LCD ekran üzerinde kolayca gösterilebilir. Bu nedenle I2C LCD ekran, Arduino öğrenmeye başlayan kullanıcılar için oldukça öğretici ve kullanışlı bir modüldür.
Arduino Projeleriniz İçin Sensör ve Modülleri İnceleyin
Arduino kartları, LCD ekranlar, sensörler, jumper kablolar, breadboard ve temel elektronik modülleri Robomer üzerinden inceleyebilirsiniz.
Robomer Sensörler Kategorisini İncele