Official StoreTekan tombol di atas untuk membeli semua alat dan bahan eksperimen di web ini

Bekerja dengan I2C LCD dan Arduino

Yang dimaksud dengan I2C LCD adalah modul LCD yang dikendalikan secara serial sinkron dengan protokol I2C/IIC (Inter Integrated Circuit) atau TWI (Two Wire Interface). Normalnya, modul LCD dikendalikan secara parallel baik untuk jalur data maupun kontrolnya. Namun, jalur parallel akan memakan banyak pin di sisi kontroller (misal Arduino, Android, komputer, dll). Setidaknya Anda akan membutuhkan 6 atau 7 pin untuk mengendalikan sebuah modul LCD. Dengan demikian untuk sebuah kontroller yang ‘sibuk’ dan harus mengendalikan banyak I/O, menggunakan jalur parallel adalah solusi yang kurang tepat.

Sebagai contoh, sebuah Arduino Uno memiliki pin digital sebanyak 13 buah. Jika Anda gunakan separuhnya untuk mengendalikan LCD berarti Anda hanya punya alternatif sekitar 6 atau 7 pin untuk mengendalikan perangkat yang lain, misalnya motor DC, sensor cahaya, keypad, dan I/O devices lainnya. Nah, sekarang tergantung pada sistem Anda, cukup atau tidak jika harus menggunakan 6/7 pin khusus untuk bekerja dengan LCD saja. Jika tidak cukup, Anda dengan mengubah jalur kendali LCD dari parallel ke serial (I2C) menggunakan modul I2C converter, sehingga Anda hanya akan membutuhkan 2 jalur kabel saja (plus satu kabel ground) untuk menghubungi sang LCD.

Arduino sendiri sudah mendukung protokol I2C/IIC. Di papan Arduino Uno, port I2C terletak pada pin A4 untuk jalur SDA (Serial Data) dan pin A5 untuk jalur SCL (Serial Clock). Jangan lupa untuk menghubungkan jalur kabel Ground antara Arduino dengan perangkat I2C client. Untuk sisi software, Arduino sudah cukup membantu kita bekerja dengan protokol ini melalui library ‘Wire.h’. Berikutnya, library ini akan dimanfaatkan untuk mengkonversi jalur parallel LCD menjadi jalur serial I2C. Anda dapat secara manual melakukannya, tapi jika tidak ingin repot, Anda dapat dengan mudah melakukannya menggunakan library LiquidCrystal_I2C.h (bersama dengan library LCD.h). Anda dapat mengunduh  LiquidCrystal_I2C secara gratis di sini dan library LCD.h di sini Untuk menambahkan library baru ke Arduino IDE dapat Anda baca caranya di sini.

Perlu saya sampaikan bahwa tidak ada (setidaknya belum saya temukan) hardware modul LCD yang mendukung/memiliki port I2C. Dengan demikian, kita akan tetap menggunakan modul LCD biasa (dengan komunikasi data secara parallel), namun akan kita konversi menggunakan modul I2C converter seperti tampak pada gambar di bawah.

modul I2C converter

Modul I2C converter ini menggunakan chip IC PCF8574 produk dari NXP sebagai kontrollernya. IC ini adalah sebuah  8 bit I/O expander for I2C bus yang pada dasarnya adalah sebuah shift register.

Untuk alur komunikasi datanya, ditunjukkan dengan  pada gambar di bawah

alur kerja modul I2C LCD Arduino

Sedangkan wiring kabel antara Arduino, modul konverter I2C dan modul LCD dapat mengikuti gambar di bawah.

bekerja dengan I2C LCD dan Arduino

Untuk sisi software-nya, Anda cukup mendefinisikan library LiquidCrystal_I2C.h di bagian atas sketch Anda. Selanjutnya, seluruh function yang termaktub dalam library ini dapat Anda maksimalkan. Berikut ini adalah contoh sketch Arduino untuk menampilkan tulisan ke dalam LCD dengan perantara modul I2C converter PCF8574.

Perlu Anda perhatikan pada baris [1 – 3] digunakan untuk mendefinisikan library Wire, LCD dan LiquidCrystal_I2C. Ketiga library ini wajib ada jika akan bekerja dengan I2C LCD. Selanjutnya perlu kita buat sebuah instance ‘lcd’ pada class ‘LiquidCrystal_I2C’ (baris [5]). Perhatikan elemen/parameter dari class ini yang menunjukkan alamat modul I2C, pinout control dan pinout data LCD. Pada kesempatan lain akan saya jelaskan mengapa menggunakan angka default 27H (0x27) untuk mengalamati modul konverter I2C ini dan bagaimana mengubahnya jika menggunakan lebih dari satu modul I2C converter.

Berikutnya kita perlu menginisialisasi modul LCD dalam blok void setup. Perhatikan dalam blok ini, kita definisikan LCD yang kita pakai adalah tipe 16×2 (baris [9]) dan kita set kecerahan/pencahayaan LCD  (baris [10-11]). Berturut-turut pada baris berikutnya kita akan membersihkan tampilan LCD (baris [16]), menuju koordinat LCD kolom 0, baris 0 (baris [17]), menuliskan tampilan ‘Hello Word’ ke LCD (baris [18]), mengeset kursor ke koordinat (0,1) yang artinya kolom 0, baris 1 (baris kedua LCD), menampilkan tulisan ‘Saptaji.com’ (baris [19-20]), dan sedikit meberikan efek animasi dengan menyalakan dan mematikan pencahayaan LCD pada baris [ 21-25 ].

Demikian tutorial penggunaan I2C LCD dengan modul konverter I2C dan Arduino, semoga ada manfaatnya. Tutorial berikutnya akan coba kita implementasikan I2C LCD ini untuk menampilkan pengukuran jarak bersama dengan sensor ultrasonik.

Incoming search terms:

program lcd arduino menggunakan i2c, menggunakan librari 12c untuk koneksi pin lcd, materi tentang lcd 16x2 i2c, modul i2c, menggunakan keypad i2c, conth program liquid crystal i2c, fungsi dari lcd setbacklightpin apa, cara membaca alamat i2c, cara menggunakan i2c, i2c pada arduino
Tags:, ,

Add a Comment

Your email address will not be published. Required fields are marked *

error: Content is protected !!