Tutorial Menggunakan LCD Dua Kabel I2C Pada NodeMCU
LCD adalah modul yang sangat penting dalam proyek berbasis mikrokontroler, tanpa LCD maka interfacenya tentu tidak akan menarik. Jika jaman dulu kita menggunakan LCD sering memiliki masalah dengan kurangnya pin input/output karena rata-rata modul LCD untuk yang paling kecil saja memerlukan pin sekitar 6 sampai 8 pin, maka sekarang dengan adanya modul interface ke I2C sekarang hanya diperlukan dua kabel saja untuk dapat menggunakan LCD.
Adapter I2C ini, selain membantu dalam menghemat penggunaan pin pada mikrokontroler, baik Arduino maupun NodeMCU, juga sangat membantu dalam menangkal terjadinya korup/rusak pada tampilan LCD yang disebabkan oleh interferensi atau EMI. Kerusakan ini biasanya terjadi karena adanya lonjakan arus pada rangkaian, seperti penggunaan pada kendali mesin besar, relai dan berbagai instrumen yang menggunakan koil bermedan magnet tinggi.
Maka dari itu, sudah menjadi kewajibaan pada jaman sekarang kita menggunakan LCD yang telah dilengkapi dengan komunikasi I2C. Selain nyaman dengan jumlah kabel yang hanya perlu dua saja, juga aman dari gangguan EMI.
Pada tulisan kali ini, saya akan berbagi catatan mengenai koding dasar untuk menggunakan LCD I2C dua kabel ini pada module mikrokontroler WiFi NodeMCU. NodeMCU sangat banyak digunakan saat ini karena kemampuannya dalam hal proyek berbasis Internet of Things melalui jaringan WiFi. Modul ini ukurannya sangat kecil, harganya murah, dan memiliki fitur yang sangat powerful.
Pengkabelan LCD I2C pada NodeMCU
Untuk pengkabelan, seperti halnya dengan modul berbasis komunikasi I2C lainnya, modul ini tentu hanya menggunakan dua kabel data, dan empat totalnya ditambah dengan kabel VCC dan GND.
Urutannya adalah, pin SDA pada modul I2C disambungkan pada Pin D2 NodeMCU, kemudian pin SCL disambungkan ke Pin D1. Pin VCC Disambungkan ke VIN, dan GND ke GND. Gambarannya seperti berikut:
SDA ---------------> D2
SCL ---------------> D1
VCC ---------------> VIN
GND ---------------> GND
Kode Program LCD I2C pada NodeMCU
Langsung saja, berikut adalah koding untuk mulai menggunakan modul ini pada NodeMCU:
#include <LiquidCrystal_I2C.h> // Konstruk object LCD dengan alamat I2C // Ganti 0x3F sesuai dengan alamat I2C modul kalian // Jika tidak tahu dapat menggunakan LCD I2C Scanner LiquidCrystal_I2C lcd(0x3F, 16, 2); void setup() { // Pemanggilan pertama memerlukan parameter jumlah kolom dan baris // Ini harus sama dengan yang dimasukan pada konstruktor. lcd.begin(16,2); lcd.init(); // Nyalakan backlight lcd.backlight(); // Pindahkan kursor ke kolom 0 dan baris 0 // (baris 1) lcd.setCursor(0, 0); // Cetak hellow ke layar lcd.print("HELLO WORLD!"); // Pindahkan kursor ke baris berikutnya dan cetak lagi lcd.setCursor(0, 1); lcd.print("TUTORKEREN.COM"); } void loop() { //Kode loop silahkan disesuaikan //... }
Mohon diperhatikan pada bagian alamat I2Cnya, pada tulisan ini modul yang saya gunakan memiliki alamat di 0x3F, punya kalian mungkin saja berbeda silahkan disesuaikan.
Oya cara mencari tahu berapa alamat modul LCD I2C kalian dapat menggunakan program I2C scanner yang lengkapnya dapat dilihat disini.
Setelah selesai mengunggah kode programnya, silahkan atur kontras LCD pada bagian belakang modul I2C. Caranya cukup diputar-putar potensio kecil yang berwarna biru menggunakan obeng hingga didapatkan kontras yang pas. Perlu diperhatikan bahwa banyak teman-teman yang bingung mengira LCDnya rusak karena setelah diprogram tidak muncul apa-apa dilayar, sedangkan penyebabnya adalah mereka lupa untuk memutar-mutar potensio kontras ini.
Hasilnya,
Sekian catatan singkat ini, semoga bermanfaat untuk teman-teman semua.
# | Download File |
---|---|
1 | ![]() |
Komentar
pin
kenapa harus menggunakan pin D1 dan D2, apakah bisa menggunakan pin lainnya? karena saya ingin menggunakan pin itu