🔀INTRO
Sebelum hadirnya Serial I2C atau ada juga yang menyebut IIC, module LCD I2C dsb, kita terkadang mengalami kendala ketika menggunakan LCD sebagai output tampilan untuk sistem yang kita buat. Salah satunya adalah penggunaan pin yang banyak, merangkai resistor, dan trimer untuk mengatur kecerahan dan tampilan pada layar dimana untuk orang yang masih belajar akan sangat banyak menyita waktu dan pikiran, jangankan merangkai rangkaian lainnya, merangkai LCD saja sudah membuat setres. Yang kedua adalah kesulitan kita dalam penempatan LCD pada box, ala2 mahasiswa sih rangkaiannya berada di PBC trus pasang kabel menuju LCD, semuanya 16 PIN pada LCD dikasih kabel walaupun yang kepakai cuma 8, ribet kan?? hayoo ngaku,, belum lagi pas nyoldernya susah, kadang ada yang nyatu, udah beres pas dipasang eh malah ada yang coplok atau putus,, solder lagi atau ganti kabel terus pasang lagi taunya urutannya kebalik, nasib,,, nasib,, (hehe,, pengalaman peribadi)
Namun sekitar tahun 2008 yang lalu berkat arduino yang bersifat open source mulailah bermunculan ide-ide dan teknologi yang dulu terpendam mulai muncul kepermukaan dan mulai menyebar dengan cepatnya, salah satu contohnya adalah penggunaan IC shift register yang sebenarnya sudah lama sekali dipakai sebagai salah satu cara untuk menghemat PIN dalam penggunaan LCD, namun karena library, coding dsb, yang tidak bersifat open source membuat mereka yang menguasai hal itu hanya membagikan ilmunya pada orang-orang tertentu saja, dan bersifat sssstttttthhhhh,, rahasia!!!. hehe,, ok kembali lagi ke munculnya si IC shift register yang sempat buming sebagai IC yang mampu menghemat PIN. klo kita searching pasti dengan mudah kita dapatkan rangkaiannya. dengan ic shift register kita hanya perlu 3 pin saja.
Namun belum lama buming ic shift register yang menurut saya sangat membantu tiba-tiba munculah I2C yang menenggelamkan kehebatan ic shift register. Dengan I2C kita hanya perlu menggunakan 2 PIN saja yaitu SCL dan SDA yang pada Arduino Uno, dan Arduino Nano adalah PIN A5 dan A4 sedangkan pada Arduino Mega adalah PIN 20 (SDA) and 21 (SCL). Oleh sebab itulah jarang kita menemukan module ic Shift Register dipasaran (kecuali buatan lokal) karena memang hanya buming beberapa saat saja. Kehebatan I2C lainnya yaitu kita dapat mengatur Backlight LCD melalui program yang kita buat dengan mudah, kemudian kita dapat menyandingkan beberapa module yang menggunakan serial I2C secara bersamaan, contohnya I2C pada LCD dan I2C pada RTC I2C, yang mana kita bisa menyatukan keduanya dengan cara paralel pada PIN yang sama yaitu SDA dan SCL.
🔀FUNGSI DAN SPESIFIKASI LCD I2C/IIC
Biasanya sebuah LCD dikendalikan secara paralel baik untuk jalur data maupun kontrolnya. Namun, cara mengakses LCD dengan teknik paralel akan banyak menghabiskan jumlah pin, setidaknya kita akan membutuhkan 6 pin untuk mengendalikan sebuah modul LCD. Sebagai contoh, sebuah Arduino Uno atau Arduino Nano memiliki pin digital sebanyak 14 buah, jika kita gunakan 6 pin untuk mengendalikan LCD berarti Anda hanya punya alternatif sekitar 8 pin untuk mengendalikan perangkat yang lain itu pun jika pin Rx dan Tx tidak kita gunakan untuk berkomunikasi dengan PC atau laptop kita. Kendala lain dari merangkai LCD secara paralel yaitu kita akan sedikit kerepotan dalam merangkainya dan tentu diperlukan beberapa komponen tambahan seperti resistor dan potensio meter untuk mengatur kontras pada LCD. Berikut adalah contoh rangkaian penggunaan LCD pada Arduino Nano secara biasa.
Rangkaian LCD Secara Paralel (Biasa) Pada Arduino Nano |
Rangkaian LCD Secara Paralel (Biasa) Pada Arduino Nano
Jika kita perhatikan gambar di atas, maka seperti itulah penggunaan LCD seperti biasa nya. Untuk lebih meyederhanakan rangkaiaan dan juga mengurangi penggunaan pin maka LCD Plus I2C serial Interface ini adalah solusinya, dimana dengan menggunakan komunikasi I2C kita hanya perlu menggunakan 2 pin untuk serial kumunikasi dan dua pin untuk Vcc dan Gnd berikut adalah spesifikasinya :
⇰ Spesifikasi:
- Jenis LCM: Karakter
- Menampilkan 2 baris X 16-karakter.
- Tegangan: 5V DC.
- Dimensi module : 80mm x 35mm x 11mm.
- luas area: 64.5mm x 16mm
- Fitur IIC / I2C 4 kabel
⇰ Interface pada Arduino Uno atau Arduino Nano :
GND -------------------- GND
VCC -------------------- 5V
SDA -------------------- A4
SCL -------------------- A5
⇰ Interface Pada Arduino Mega :
GND -------------------- GND
VCC -------------------- 5V
SDA -------------------- D20
SCL -------------------- D21
🔁LCD WITH I2C/IIC ARDUINO
⤇ Alat dan Bahan :
- ARDUINO, bisa dibeli dan dipilih disini ⇒ (BL) (TP)
- Kabel Jumper , bisa dibeli dan dipilih disini ⇒ (BL) (TP)
- LCD WITH I2C SERIAL INTERFACE MODULE, bisa di beli disini ⇒(BL) (TP)
⤇ Library :
DOWNLOAD LIBRARY |
⤇ Cara Merangkai / Skematik / Interfacing
LCD I2C Arduino Uno |
LCD I2C Arduino Nano |
LCD I2C Arduino Mega |
⤇ Step By Step
- Siapkan alat dan bahan
- Tambahkan library yang telah diDownload pada IDE arduino (bisa menggunakan cara manual maupun menggunakan cara Mengimpor Libray .zip)
- Buka IDE Arduino lalu masukan program di bawah ini :
#include <Wire.h>
#include <LiquidCrystal_I2C.h>
// Set the LCD address to 0x27 for a 16 chars and 2 line display
LiquidCrystal_I2C lcd(0x27, 16, 2);
void setup()
{
// initialize the LCD
lcd.begin();
// Turn on the blacklight and print a message.
//lcd.backlight();
lcd.setCursor(0,0);
lcd.print(" CNC STORE");
lcd.setCursor(0,1);
lcd.print(" BANDUNG");
}
void loop()
{
// Do nothing here...
}
*Alamat I2C untuk LCD yang beredar dipasaran adalah 0x27 dan 0x3F jika 0x27 tidak dapat digunakan maka rubah alamat I2C pada program menjadi 0x3F. Atau untuk lebih pastinya dapat menggunakan SCANNER_I2C yang sudah terdapat pada example Library I2C yang telah di instal
*Jika menggunakan LCD 20x4 maka ubah juga program dibagian LiquidCrystal_I2C lcd(0x27, 16, 2); menjadi LiquidCrystal_I2C lcd(0x27, 20, 4);
- Terakhir atur kontras dengan memutar trimer yang berada module I2C/IIC sesuai keinginan....
Trimer Untuk Mengatur LCD I2C IIC Kontras |
- Lalu lihatlah hasilnya,,!! contoh jika berhasil maka seperti pada gambar di bawah :
Test LCD I2C Arduino Nano CNC STORE BANDUNG |
Test LCD I2C Arduino Nano CNC STORE BANDUNG
Demikianlah tutorial dasar mengenai LCD I2C/IIC Serial Interface menggunakan arduino. Semoga tulisan ini bermanfaat, baik bagi para pelanggan kita yang senantiasa berbelanja dilapak kita maupun untuk kalian secara umum. Untuk pertanyaan, kritik, saran, dan koreksi bisa disampaikan melalui komentar, chat BUKALAPAK maupun TOKOPEDIA, atau melalui nomor kita di 082-23456-6363 via telepon dan WA.
~TERIMAKASIH!~
|
Mudah dan lengkap, mkasih,,
BalasHapusSama-sama
Hapusmisal diparalel dgn pin yg sama untuk lcd dan keypad dengan i2c yg sama bisa nggak?
BalasHapusmasih bisa kok gan, untuk i2c itu bisa puluhan di pararel asal alamatnya berbeda
HapusPermisi bang.. klo lcd i2c (scl sda 1 pasang)+ 2 sensor bh1750 (scl sda dipararel) bisa dipararel gak di arduino uno. Alamat udh berbeda bang tpi tetep cman 1 sensor yg ke baca
Hapuskeren
BalasHapus