LCD Shield adalah LCD (Liquid Crystal Display) dengan ukuran 16×2 yang sudah berbentuk shield (modul yang kompatibel dengan papan Arduino Uno) sehingga bisa langsung diprogram dan digunakan (plug n play) di atas papan Arduino Uno. Di dalam modul LCD (biasanya menggunakan LCD Hitachi HD44780) ini sudah terdapat semacam rangkaian minimumnya, sehingga kita tidak perlu membuatnya sendiri. Bahkan sudah disediakan beberapa tombol yang dapat digunakan sebagai navigasi menu di LCD.
Karena sudah berbentuk shield, maka pin-pin control-nya juga sudah ditentukan oleh pembuatnya, jadi kita tidak bisa menggunakan pin lain di sisi Arduino untuk mengendalikan LCD shield ini. Pin Arduino yang sudah di-reserved untuk penggunaan shield ini adalah :
Pin | Fungsi |
8 | RS (Register Select) |
9 | EN (enable) |
4 | Data-4 (D0 in 4-bit mode) |
5 | Data-5 (D1 in 4-bit mode) |
6 | Data-6 (D2 in 4-bit mode) |
7 | Data-7 (D3 in 4-bit mode) |
Dengan demikian kita WAJIB menggunakan pin di atas saat menginisialisasi LCD dalam sketch Arduino kita. Anda bisa saja langsung mengendalikan LCD shield menggunakan perintah digitalWrite di pin terkait, namun untuk lebih mudahnya, saya sarankan menggunakan library yang sudah ada, yakni LiquidCrystal.h. Anda bisa langsung mendefinisikan library ini di bagian paling atas sketch karena library ini adalah library bawaan Arduino.
Berikut ini adalah contoh sketch sederhana untuk menampilkan ‘Hello World’ di LCD shield menggunakan script Arduino.
#include <LiquidCrystal.h> LiquidCrystal lcd(8, 9, 4, 5, 6, 7); void setup() { lcd.begin(16, 2); lcd.print("Hello World"); } void loop() { lcd.setCursor(0, 1); lcd.print("saptaji.com"); }
Perhatikan bahwa pada baris [1], kita harus mendefinikan library LiquidCrystal terlebih dahulu agar seluruh fungsi-fungsi di dalam library ini dapat digunakan. Berikutnya, pada baris [3] perlu kita definisikan pin-pin yang digunakan dalam LCD shield ini (lihat tabel di atas). Selanjutnya kita perlu menginisialisasi LCD shield dengan perintah lcd.begin (16,2); di blok void setup (lihat baris [6]). Dan untuk menampilkan tulisan ‘Hello World’ di LCD shield, dapat dengan mudah Anda lakukan dengan function lcd.print (baris [7] ). Pada bagian blok void loop sebenarnya hanya script tambahan saja, hanya sekedar untuk menampilkan tulisan ‘saptaji.com’ pada baris kedua LCD. Yang perlu Anda perhatikan mungkin perintah lcd.setcursor pada baris [11]. Perintah ini adalah untuk memerintahkan LCD agar menampilkan data di koordinat kolom 0, baris 1 (baris kedua di LCD 16×2). Kurang lebih begini tampilan pada eksperimen di atas :
Bagaimana? Cukup mudah, bukan? Jadi pada intinya, bekerja dengan LCD shield dan LCD biasa (dengan rangkaian sistem minimum yang dibuat sendiri) adalah sama baik penggunaan library-nya maupun cara mengaksesnya. Perbedaannya adalah jika bekerja dengan LCD shield, pin control-nya sudah ditentukan dan tidak bisa diubah, sedangkan jika menggunakan LCD non shield bisa kita atur sendiri pin control-nya. Jadi concern-nya adalah tergantung pada desain sistem kita, jika menggunakan LCD shield otomatis segalanya (dimensi, header, pin) sudah ditentukan dan desain kita harus mengikuti, sedangkan jika menggunakan bare LCD kita bisa lebih leluasa (custom) dalam mendesain sistem kita sendiri (PCB, layout, peletakan pada boks, dll).
Pada tutorial berikutnya akan saya contohkan penggunaan LCD shield ini sebagai diplay sebuah RPM meter untuk motor DC/AC.
a Technopreneur – writer – Enthusiastic about learning AI, IoT, Robotics, Raspberry Pi, Arduino, ESP8266, Delphi, Python, Javascript, PHP, etc. Founder of startup Indomaker.com
SAYA SUKA ….lajutkan