top of page

Menampilkan Teks di LCD I2C 16x2 dengan Wemos D1 Mini

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

wiring

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

  1. Mengimpor library Wire.h dan LiquidCrystal_I2C.h untuk komunikasi I2C.

  2. Mengatur alamat I2C (0x27 atau 0x3F, tergantung pada jenis LCD).

  3. Menyalakan backlight agar teks terlihat.

  4. 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


Bantu tingkatkan
kualitas website ini!

Dengan memberi masukan dan/atau pertanyaan

Jika berkenan, silakan masukan e-mail Anda untuk kontak lebih lanjut

Pilihan
Masukan
Pertanyaan
Lainnya
bottom of page