Cara Menyambung LCD ke Mikrokontroler

Mungkin ini hal sepele. Bagi anda yang sudah lama  bergelut dg mikrokontroler. Tapi masih banyak juga yang perlu penjelasan detail. Kami masih sering mendapat pertanyaan bagimana menghubungkan LCD ke pin mikrokontroler.

Master Mikrokontroler

Pertama, kita pahami dulu LCD, yang dibahas tipe LCD karakter, yaitu yang menampilkan karakter/huruf saja. Ada sih LCD grafik yang dapat menampilkan grafik atau gambar. LCD karakter (alphanumeric LCD) ada beberapa tipe, berdasar jumlah baris dan kolom. Semakin banyak kolom dan baris maka semakin banyak karakter yang dapat ditampilkan.
99 proyek arduinoUmumnya yang dipakai adalah ukuran 162, 16 kolom dan 2 baris.

LCD 162

Sebuah LCD, hampir semua ukuran, terdapat 16 kaki/pin. Seperti apa saja ?
[gambar pin]
Keterangannya :

No pinKeterangan
1GND
2VCC
3VEE
4RS
5RW
6E
7D0
8D1
9D2
10D3
11D4
12D5
13D6
14D7
15A
16K

Pin nomor 1 konek ke GND dan 2 terhubung dengan tegangan 5 V, ini untuk supply tegangan LCD. Pin 3 (VEE) untuk mengatur kontras, biasanya dihubungkan dengan trimpot, atau langsung ke ground juga boleh (kontras maksimal). Pin RS, RW dan E merupakan jalur control, dihubungkan dengan kaki mikrokontroler.

Pin nomor 7 s/d 14 (D0 s/d D7) adalah jalur data, tetapi yang dipakai hanya D4 s/d D7. Kenapa ? Biar irit port dan BASCOM-AVR maupun CVAVR  cocok untuk data 4 bit. Jadi D0 s/d D3 tidak disambung, D4 s/d D7 disambungkan ke pin mikrokontroler. Trus nomor 15 itu Anoda dan 16 Katoda, untuk power backlight, sifatnya optional. Jika backlight mau dihidupkan maka Anoda dihubungkan dengan +5V dan Katoda ke Gnd. Jadi pin 15 (A) nyambung ke pin 2 (Vcc) dan pin 16 (K) sambungin ke pin 1 (Gnd).

Gimana nyambungnya ?
Ya pakai kabel, disolder apa ditaliin gitu..,mosok dilem pakai nasi  hehe..
Jika kita pakai bahasa BASCOM-AVR maka boleh disambung ke pin/kaki mikrokontroler mana saja, terserah.  Tinggal nanti softwarenya yang menyesuaikan. Contoh nih ya, pin RS ke PB.0, pin E ke PB.1. Oya untuk BASCOM-AVR pin RW langsung konek ke ground ya. Trus D4 s/d D7 ke PB.2 s/d PB.5.

Rangkaian LCD 1

Nah tinggal sesuaikan programnya :
Config Lcdpin = Pin , Rs=PORTB.0 , E=PORTB.1 , Db4 = PORTB.2 ,Db5 =PORTB.3 , Db6=PORTB.4 ,Db7 = PORTB.5

Ini contoh yang lain :

Rangkaian LCD 2

Maka programnya menjadi :

Config Lcdpin = Pin , Rs=PORTB.2 , E=PORTB.0 , Db4 = PORTD.0 ,Db5 =PORTB.1 , Db6=PORTB.7 ,Db7 = PORTD.3

Intinya tidak harus urut (urut juga boleh), tidak harus 1 port (1 port juga boleh).
Nah untuk bahasa C (CVAVR) , jika memakai CVAVR V1 maka koneksi harus urut mulai PORTX.0 s/d PORTX.7. Contoh :

Rangkaian LCD 3

Perhatikan bahwa pin RW terhubung ke PORT mikro, bukan ke ground seperti BASCOM. Mulai dari RS,RW sampai D7 harus urut PORTB.0 s/d PORTB.7.
Maka pada program cukup menambahkan library :

// Alphanumeric LCD Module functions
#asm
   .equ __lcd_port=0x18 ;PORTB
#endasm
#include

Jika pakai CVAVR V2, tidak harus urut, hampir mirip seperti BASCOM-AVR. Konfigurasi koneksi pin melalui Configure pada Project :

Konfigurasi LCD pada CVAVR

Kemudian tambahkan 1 baris library :

#include

Aplikasi Mikrokontroler

Baik supaya lebih paham lagi, kita praktek. Pertama pakai BASCOm-AVR dengan rangkain gambar 1.

$regfile = “m8535.dat”
$crystal = 16000000
Config Lcdpin = Pin , Rs = Portb.0 , E = Portb.1 , Db4 = Portb.2 ,
Config Lcdpin = Pin , Db5 = Portb.3 , Db6 = Portb.4 , Db7 = Portb.5
Config Lcd = 16 * 2
Cursor Off
Cls
Lcd “LCD Ukuran 162”
Lowerline
Lcd “abcdefghijklmnop”
End

Selanjutnya CVAVR V2 dengan rangkaian pada gambar 3.

#include
#include  
void main(void)
{         
lcd_init(16);
lcd_putsf(“LCD Ukuran 162”);
lcd_gotoxy(0,1);
lcd_putsf(“abcdefghijklmnop”);
while (1);
}

Lebih gampang yang mana gan ? Mudah semua kan ?

This entry was posted in Mikrokontroler AVR and tagged , , , , , . Bookmark the permalink.

One Response to Cara Menyambung LCD ke Mikrokontroler

  1. Pingback: Cara Menyambung LCD ke ARDUINO | inkubator-teknologi.com

Leave a Reply