Tutorial Mengakses LCD Dengan I2C Menggunakan Arduino

LCD merupakan salah satu komponen yang cukup sering digunakan untuk menjadi display device di mikrokontroler. Untuk menampilkan sesuatu entah berupa teks maupun angka, kita bisa menggunakan LCD. Salah satu rekomendasi saya dalam pemilihan jenis LCD yaitu Alphanumeric LCD. Mengapa demikian? Bisa dikatakan jenis LCD ini merupakan yang termurah dah termudah sehingga cocok digunakan untuk pemula maupun yang sudah ahli.

Pengiriman Data Antara Arduino dan LCD

Dalam mengakses sebuah LCD, terdapat 2 cara. Cara pertama, kita bisa menggunakan komunikasi paralel antara LCD dan mikrokontroler. Cara ini mungkin bisa dibilang lebih murah, dikarenakan kita hanya perlu menggunakan kabel untuk menghubungkan mikrokontroler dengan LCD. Akan tetapi, jumlah kabel yang digunakan cukup banyak sehingga dirasa kurang efisien dalam rangkaian. Selain itu, menggunakan metode ini memerlukan banyak port sehingga dapat mengurangi jumlah port yang tersedia.

Cara kedua yaitu dengan memanfaatkan koneksi I2C (Inter-Integrated Circuit). Dengan menggunakan koneksi ini, pengiriman data dari arduino ke LCD berupa serial dengan dua arah (full-duplex). Koneksi ini menggunakan sistem master dan slave dimana mikrokontroler/arduino sebagai master-nya dan LCD berlaku sebagai slave. Keunggulan dari koneksi ini yaitu hanya memerlukan 2 kabel sebagai koneksi datanya yaitu SDA dan SCL. Akan tetapi, kita memerlukan device tambahan berupa modul I2C yang bisa anda dapatkan di toko elektronik.

Sebelum memulai praktik, kita memerluka komponen berikut.
1. Arduino board
2. Alphanumeric LCD (Saya menggunakan LCD 16x2)
3. Modul I2C
4. Kabel Jumper

Anda juga memerlukan Library LiquidCrystal_I2C.h disini.
Dan Library Wire.h disni

Setelah menyiapkan komponen di atas, silahkan rangkai komponen tersebut seperti gambar di bawah.


Jika anda menggunakan Arduino Uno, pin SDA ada di Pin A4 dan SCL ada di Pin A5. Jika menggunakan board Arduino tipe lain, silahkan sesuaikan dengan pin SDA dan SCL masing-masing.
Khusus Arduino UNO
VCC pada LCD i2C ke pin 5V Arduino
GND pada LCD i2C ke pin GND Arduino
SCL pada LCD i2C ke pin SCL ( pin A5) Arduino
SDA pada LCD i2C ke pin SDA (pin A4) Arduino
Setelah selesai merangkai, untuk menggunakan I2C kita perlu tahu terlebih dahulu address dari I2C yang kita miliki. Cara mengetahui address I2C bisa kita coba dengan melihatnya melalu serial monitor.
Berikut merupakan source code untuk mendeteksi address perangkat I2C anda.


#include <Wire.h>

void setup() 
{
  Serial.begin (115200);
  while (!Serial)
    {
    }
  Serial.println ();
  Serial.println ("I2C Scanner. Scanning ...");
  byte count = 0;
  Wire.begin();
  
  for (byte i = 1; i < 120; i++)
    {
      Wire.beginTransmission (i);
      if (Wire.endTransmission () == 0)
        {
          Serial.print ("Ditemukan Alamat: ");
          Serial.print (i, DEC);
          Serial.print (" (0x");
          Serial.print (i, HEX);
          Serial.println (")");
          count++;
          delay (1);
        }
    }
   Serial.println ("Selesai.");
   Serial.print ("Ditemukan ");
   Serial.print (count, DEC);
    Serial.println (" device(s).");
}

void loop()
{
}

Setelah di upload, silahkan buka serial monitor anda. Jangan lupa sesuaikan baudrate sesuai program yaitu 115200. Copy address yang ditemukan (contoh 0x3F).

Selanjutnya masukan program LCD dengan I2C berikut.

#include  <Wire.h>
#include  <LiquidCrystal_I2C.h>

LiquidCrystal_I2C lcd(0x3F, 16,2);  // Ganti 0x3F dengan address I2C anda

void setup() 
{
  Serial.begin(9600);
 
  lcd.begin();
 
  lcd.backlight();
  delay(250);
  lcd.noBacklight();
  delay(250);
  lcd.backlight();
 
  lcd.setCursor(0,0);
  lcd.print("Teknodika.com");
  delay(1000);
  lcd.setCursor(0,1);
  lcd.print("Belajar LCD I2C");
  delay(8000);
}

void loop() 
{
}

Catatan:
Address 0x3F diganti dengan address I2C anda. Jika sama, anda tidak perlu mengubahnya.

Selamat, anda sudah bisa mengakses LCD dengan i2C. Jika anda pertanyaan, silahkan tanyakan di kolom komentar ya.

Berikut merupakan tutorial mengakses LCD dengan I2C. Terimakah telah membaca, jangan lupa share!

Berlangganan update artikel terbaru via email:

1 Response to "Tutorial Mengakses LCD Dengan I2C Menggunakan Arduino"

  1. layar Lcd saya tetap berwarna kuning dan tidak menampilkan apa apa min... padahal alamatnya sudah sesuai dengan lcd saya mohon bantuannya min

    ReplyDelete

Iklan Atas Artikel

Iklan Tengah Artikel 1

Iklan Tengah Artikel 2

Iklan Bawah Artikel