DC
Kelas Digital Creative
Robotika · IoT · Scratch · Canva · CapCut · AI
← kembali ke Home

Menampilkan Teks di LCD 16×2 dengan I2C

⏱ 40 Menit Arduino August 2026 🔧 Arduino Uno, LCD 16x2 I2C, Kabel Jumper

Project ini menampilkan teks di layar LCD 16×2 menggunakan modul I2C, yang menyederhanakan pengkabelan dari 16 pin jadi cuma 4 pin. Cocok untuk menampilkan status, pesan, atau hasil bacaan sensor secara visual tanpa perlu Serial Monitor.

Yang akan kamu pelajari

  • Menginstall dan menggunakan library eksternal di Arduino IDE
  • Mengontrol posisi teks di layar LCD dengan setCursor()
  • Membuat teks bergantian dengan delay()

Peta Pin / Wiring

Komponen Pin Arduino Fungsi
VCC LCD I2C 5V Arduino Sumber daya modul
GND LCD I2C GND Arduino Ground modul
SDA LCD I2C Pin A4 Jalur data komunikasi I2C
SCL LCD I2C Pin A5 Jalur clock komunikasi I2C

Langkah 1: Siapkan rangkaian

Modul LCD I2C punya 4 pin: VCC, GND, SDA, SCL. Hubungkan sesuai tabel di atas — tidak perlu resistor tambahan karena modul I2C sudah punya rangkaiannya sendiri.

Langkah 2: Install library LiquidCrystal_I2C

Buka Arduino IDE, masuk ke menu Sketch → Include Library → Manage Libraries. Ketik “LiquidCrystal I2C” di kolom pencarian, cari yang dibuat oleh Frank de Brabander, klik Install.

⬇ Download Library LiquidCrystal_I2C

Pada Wokwi lihat gambar berikut ini :

Langkah 3: Cek alamat I2C (opsional)

Kode ini menggunakan alamat 0x27, yang merupakan alamat paling umum untuk modul LCD I2C. Jika layar tidak menyala sama sekali setelah upload, kemungkinan alamat modulmu berbeda (misalnya 0x3F) — coba ganti angka itu di kode, atau cari tutorial “I2C Scanner” untuk mengecek alamat yang tepat.

Langkah 4: Upload kode

Salin kode di bawah ini ke Arduino IDE, klik tombol Upload, dan tunggu sampai muncul tulisan “Done uploading”.


//Created by Irham Azhari Aulia
#include <LiquidCrystal_I2C.h>

// Mengatur ukuran LCD (alamat 0x27, 16 kolom, 2 baris)
LiquidCrystal_I2C lcd(0x27, 16, 2);

void setup() {
  // 1. Menyalakan mesin LCD
  lcd.init();      
  
  // 2. Menyalakan lampu latar (backlight) biar teksnya kelihatan
  lcd.backlight(); 
  
  // 3. Menulis teks statis di baris PERTAMA (atas)
  lcd.setCursor(0, 0); // (Mulai dari kolom 0, baris 0)
  lcd.print("   Al Azhar Syifa Budi Cibinong  ");
}

void loop() {
  // 4. Menulis teks bergantian di baris KEDUA (bawah)
  lcd.setCursor(0, 1); // (Mulai dari kolom 0, baris 1)
  lcd.print(" STATUS: AMAN   ");
  
  delay(1500); // Tahan tulisan selama 1,5 detik
  
  lcd.setCursor(0, 1);
  lcd.print(" LCD BISA BACA! ");
  
  delay(1500); // Tahan tulisan selama 1,5 detik
}

Cara Kerja Kode

Fungsi setCursor(kolom, baris) menentukan posisi mulai menulis di layar — layar 16×2 punya 16 kolom (0-15) dan 2 baris (0-1). Baris pertama ditulis sekali saja di setup() karena isinya tidak berubah, sementara baris kedua ditulis berulang di loop() dengan teks bergantian setiap 1,5 detik.

Jika layar menyala tapi teksnya tidak terlihat sama sekali (hanya kotak-kotak putih), biasanya ada trimpot kecil di belakang modul I2C untuk mengatur kontras — putar pelan-pelan dengan obeng kecil sampai teks muncul.

Latihan

  1. Ganti teks di baris pertama dengan nama project atau namamu sendiri
  2. Buat efek scrolling: tampilkan pesan panjang yang bergeser dari kanan ke kiri di baris kedua
  3. Kombinasikan dengan sensor (misalnya LDR dari tutorial sebelumnya), tampilkan hasil bacaannya langsung di LCD alih-alih Serial Monitor

Coba Simulasi di Wokwi

🔒 Simulasi ini dikunci. Minta passcode ke gurumu untuk membuka.