Menampilkan Teks di LCD I2C 16x2 dengan Wemos D1 Mini
- Adam Kusumah
- May 16
- 3 min read
Halo teman-teman, selamat datang kembali di website Cosmo! Di artikel ini, kita akan belajar cara memprogram LCD I2C 16x2 untuk menampilkan teks atau karakter menggunakan Wemos D1 Mini. Selain itu, kita juga akan membahas masalah umum yang sering muncul, seperti layar blank atau teks tidak muncul, meskipun program sudah berjalan dengan baik. Mari kita mulai.
Rangkaian
Untuk menyusun rangkaian, kita membutuhkan beberapa komponen berikut:
Wemos D1 Mini (ESP8266)
LCD I2C 16x2
Kabel jumper
Skema Rangkaian

Penjelasan Rangkaian
LCD I2C memiliki dua jalur komunikasi utama, yaitu SDA (data) dan SCL (clock). Wemos D1 Mini menggunakan protokol I2C untuk mengirim data ke LCD. Pastikan pin SDA dan SCL tersambung dengan benar ke Wemos D1 Mini:
SDA ke D2
SCL ke D1
Selain itu, pastikan tegangan kerja LCD sesuai dengan sumber daya dari Wemos D1 Mini agar tidak terjadi gangguan.
Kode Program
Kode program LCD I2C terbagi menjadi 2, yaitu check dan test. Kode check digunakan utnuk mengetahui adress yang digunakan oleh LCD I2C yang digunakan. kemudian setelah adress itu diketahui, maka akan digunkaan untuk program check.
Kode Program Check
Berikut kode program check:
#include <Wire.h>
void setup() {
Serial.begin (115200);
// Leonardo: wait for serial port to connect
while (!Serial)
{
}
Serial.println ();
Serial.println ("I2C scanner. Scanning ...");
byte count = 0;
Wire.begin();
for (byte i = 8; i < 120; i++)
{
Wire.beginTransmission (i);
if (Wire.endTransmission () == 0)
{
Serial.print ("Found address: ");
Serial.print (i, DEC);
Serial.print (" (0x");
Serial.print (i, HEX);
Serial.println (")");
count++;
delay (1); // maybe unneeded?
} // end of good response
} // end of for loop
Serial.println ("Done.");
Serial.print ("Found ");
Serial.print (count, DEC);
Serial.println (" device(s).");
} // end of setup
void loop() {}Silakan upload kode ini ke mikrokontroller kalian dan nanti akan keluar output nilai adressnya. ada di baris "Found adress: ... (0x...)". setelah itu, kalian copy nilai adress dari 0x.. untuk dimasukan ke kode test. Contohnya seperti 0x27.
Kode Program Test
Berikut adalah kode program test:
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Menginisialisasi LCD I2C dengan alamat 0x3F dan ukuran 16x2
LiquidCrystal_I2C lcd(0x27, 16, 2); // jika alamat i2c kalian ukan 0x27, maka ganti baris itu dengan hasil adress dari kode program check. jika sama, maka tidak perlu dirubah
void setup() {
Serial.begin(115200); // Menginisialisasi Serial Monitor dengan baud rate 115200
lcd.begin(); // Menginisialisasi LCD dengan parameter kolom dan baris
lcd.clear(); // Membersihkan layar LCD
lcd.setCursor(4, 0); // Mengatur posisi kursor ke kolom 4 baris 0
lcd.print("Welcome"); // Menampilkan teks "Welcome"
lcd.setCursor(0, 1); // Mengatur posisi kursor ke kolom 0 baris 1
lcd.print("I2C LCD Project"); // Menampilkan teks "I2C LCD Project"
}
void loop() {
// Tidak ada kode dalam loop karena tampilan sudah tetap
}
Penjelasan Kode Program
Mengimpor library Wire.h dan LiquidCrystal_I2C.h untuk komunikasi I2C.
Mengatur alamat I2C (0x27 atau 0x3F, tergantung pada jenis LCD).
Menyalakan backlight agar teks terlihat.
Menampilkan teks "Halo, Cosmo!" di baris pertama LCD.
Hasil
Jika semuanya sudah berjalan dengan baik, LCD akan menampilkan teks "Welcome" di baris pertama dan "I2C LCD Project" di baris kedua. Jika teks tidak muncul atau layar tetap blank, kemungkinan ada masalah dengan:
Alamat I2C tidak cocok (Gunakan I2C Scanner untuk mencari alamat yang benar).
Koneksi SDA dan SCL terbalik.
Tegangan tidak sesuai dengan kebutuhan LCD.
potensiometer yang harus disesuaikan (posisisnya dibelakang lcd, pakai obeng kecil untuk memutarkannya ke kiri atau kanan).
Video Tutorial
untuk lebih mudah memahami tutorial, silakan tonton video ini:
Kesimpulan
Dengan menggunakan protokol I2C, kita bisa dengan mudah menampilkan teks di LCD 16x2 menggunakan Wemos D1 Mini. Pastikan untuk memeriksa alamat I2C dan koneksi kabel jika mengalami kendala.
Jika ada pertanyaan, kritik, saran, ataupun ide proyek IoT lainnya, silakan sampaikan dengan mengisi form di bawah artikel. Semoga artikel ini bermanfaat. Jika ingin mendapatkan info tutorial dalam bentuk video youtube, silakan kunjungi channel Youtube IQ+!



Comments