LCD adalah sebuah display dot matrix yang difungsikan untuk menampilkan tulisan berupa angka atau huruf sesuai dengan yang diinginkan (sesuai dengan program yang digunakan untuk mengontrolnya). Pada tugas akhir ini penulis menggunakan LCD dot matrix dengan kharakter 2 x 16, sehingga kaki-kakinya berjumlah 16 pin.
LCD sebagaimana output yang dapat menampilkan tulisan sehingga lebih mudah dimengerti, dibanding jika menggunakan LED saja. Dalam modul ini menggunakan LCD character untuk menampilkan tulisan atau character saja.
Tampilan LCD terdiri dari dua bagian, yakni bagian panel LCD yang terdiri dari banyak “titik”. LCD dan sebuah mikrokontroller yang menempel dipanel dan berfungsi mengatur ‘titik-titik’ LCD tadi menjadi huruf atau angka yang terbaca.
Huruf atau angka yang akan ditampilkan dikirim ke LCD dalam bentuk kode ASCII, kode ASCII ini diterima dan diolah oleh mikrokontroller di dalam LCD menjadi ‘titik-titik’ LCD yang terbaca sebagai huruf atau angka. Dengan demikian tugas mikrokontroller pemakai tampilan LCD hanyalah mengirimkan kode-kode ASCII untuk ditampilkan.
Spesifikasi LCD secara umum:
· Jumlah baris
· Jumlah karakter per baris
· Tegangan kerja
Fungsi dari pin pada LCD karakter :
Ø Pin 1 : Vss/GND : Tegangan 0 volt atau ground.
Ø Pin 2 : Vcc : Tegangan Vcc.
Ø Pin 3 : VEE/Vcontrast : Tegangan pengatur kontras pada LCD
"1" : data
Ø Pin 5 : R/W : Signal yang digunakan untuk memilih mode membaca atau menulis
"1" : Baca
Ø Pin 6 : E (Enable) : Untuk mulai pengiriman data atau instruksi
: Untuk mengirimkan data karakter
Ø Pin 15 dan Pin 16 : Untuk mengatur cahaya pada background LCD atau instruksi
Cara Kerja Menjalankan LCD :
v Pertama Inisialisasi LCD
v Kedua Arahkan pada alamat yang dikehendaki (Lihat Tabel alamat)
v Ketiga tuliskan data ke LCD, maka karakter akan tampil pada alamat tersebut
Beberapa fungsi instruksi dari LCD, yaitu :
1. Display Clear
RS R/W DB7 DB0
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 |
Display Clear membersihkan semua tampilan dan mengembalikan cursor pada posisi semula (address 0). Ruang kode 20 (heksadesimal) ditulis ke semua alamat dari DD RAM, dan alamat 0 dari DD RAM diset ke AC (Address Counter). Jika diubah, display akan kembali ke posisi semula. Setelah perintah eksekusi pada Display Clear, mode entry akan ditambahkan.
2. Cursor Home
RS R/W DB7 DB0
0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | * |
* : invalid bit
Cursor Home mengembalikan cursor ke posisi semula (address 0). DD RAM alamat 0 diset ke AC dan cursor kembali ke posisi semula. Isi DD RAM jangan dirubah. Jika cursor sedang ON, maka akan kembali ke sebelah kiri.
3. Entry Mode Set
RS R/W DB7 DB0
0 | 0 | 0 | 0 | 0 | 0 | 0 | 1 | I/D | S |
Entry Mode Set diset untuk menunjukkan perpindahan cursor dan apakah display akan dirubah
I/D : ketika I/D = 1, alamat akan ditambah satu dan cursor berpindah ke kanan.
ketika I/D = 0, alamat akan dikurangi satu dan cursor berpindah ke kiri.
S : ketika S = 1 dan I/D = 1, display berpindah ke kiri.
ketika S = 1 dan I/D = 0, display berpindah ke kanan.
ketika S = 0 ,display tak berpindah.
4. Display ON / OFF Control
RS R/W DB7 DB0
0 | 0 | 0 | 0 | 0 | 0 | 1 | D | C | B |
Display ON/OFF Control mengembalikan total dispay dan cursor ON dan
OFF, dan membuat posisi cursor mulai berkedip.
D : ketika D = 1, display ON
ketika D = 0, display OFF
C : ketika C = 1, cursor ditampilkan
ketika C = 0, cursor tidak ditampilkan
B : ketika B = 1, karakter pada posisi cursor berkedip
ketika B = 0, karakter pada posisi cursor tidak berkedip.
Contoh : C = 1 (cursor display)
B = 1 (blinking)
Gambar 2.8 Penampakan Cursor pada LCD
1. Cursor / Display Shift
RS R/W DB7 DB0
0 | 0 | 0 | 0 | 0 | 1 | S/C | R/L | * | * |
- : invalid bit
Cursor Disply Shift memindah cursor dan mengubah display tanpa merubah isi dari DD RAM. Berikut ini tabel penunjukan cursor, yaitu :
Tabel 2.2 Penunjukkan cursor
S/C | R/L | Operasi |
0 | 0 | Posisi cursor dipindah ke kiri |
0 | 1 | Posisi cursor dipindah ke kanan |
1 | 0 | Semua display dipindah ke kiri dengan cursor |
1 | 1 | Semua display dipindah ke kanan dengan cursor |
6. Function Set
RS R/W DB7 DB0
0 | 0 | 0 | 0 | 1 | D/L | 1 | * | * | * |
* : invalid bit
Function Set digunakan untuk mengeset pemisahan data length.
DL : ketika DL =1, data length diset untuk 8 bit (DB7 sampai DB0).
ketika DL =0, data length diset untuk 4 bit (DB7 sampai DB4).
Untuk bit atas ditransfer lebih dulu, kemudian dilanjutkan bit bawah.
LCD yang penulis gunakan adalah M1632, yang mana digunakan untuk menampilkan proses pengujian pada Perimetri dari awal sampai akhir dan didapat hasilnya yaitu apakah pasien tersebut normal atau abnormal. LCD ini hanya memerlukan daya yang sangat kecil, tegangan yang dibutuhkan juga sangat rendah yaitu +5 VDC. Panel TN LCD untuk pengaturan kekontrasan cahaya pada display dan CMOS LCD drive sudah terdapat di dalamnya. Semua fungsi display dapat dikontrol dengan memberikan instruksi dan dapat dengan mudah dipisahkan oleh MPU. Ini membuat LCD berguna untuk range yang luas dari terminal display unit untuk mikrokomputer dan display unit measuring gages.
Tabel 2.1. Fungsi Pin Pada LCD
No. | Symbol | Level | Keterangan |
1 | Vss | - | Dihubungkan ke 0 V (Ground) |
2 | Vcc | - | Dihubungkan dengan tegangan supply +5V dengan toleransi ± 10%. |
3 | Vee | - | Digunakan untuk mengatur tingkat kontras LCD. |
4 | RS | H/L | Bernilai logika ‘0’ untuk input instruksi dan bernilai logika ‘1’ untuk input data. |
5 | R/W | H/L | Bernilai logika ‘0’ untuk proses ‘write’ dan bernilai logika ‘1’ untuk proses ‘read’. |
6 | E | H | Merupakan sinyal enable. Sinyal ini akan aktif pada failing edge dari logika ‘1’ ke logika ‘0’. |
7 | DB0 | H/L | Pin data D0 |
8 | DB1 | H/L | Pin data D1 |
9 | DB2 | H/L | Pin data D2 |
10 | DB3 | H/L | Pin data D3 |
11 | DB4 | H/L | Pin data D4 |
12 | DB5 | H/L | Pin data D5 |
13 | DB6 | H/L | Pin data D6 |
14 | DB7 | H/L | Pin data D7 |
15 | V+BL | - | Back Light pada LCD ini dihubungkan dengan tegangan sebesar 4 – 4,2 V dengan arus 50 – 200 mA |
16 | V-BL | - | Back Light pada LCD ini dihubungkan dengan ground |
Gambar 2.6. Penampakan Cursor pada LCD
5. Cursor/ Display Shift
RS R/W DB7 DB0
0 | 0 | 0 | 0 | 0 | 1 | S/C | R/L | * | * |
* : invalid bit
Cursor Disply Shift memindah cursor dan mengubah display tanpa merubah isi dari DD RAM. Berikut ini tabel penunjukan cursor, yaitu :
Tabel 2.2 Penunjukkan cursor
S/C | R/L | Operasi |
0 | 0 | Posisi cursor dipindah ke kiri |
0 | 1 | Posisi cursor dipindah ke kanan |
1 | 0 | Semua display dipindah ke kiri dengan cursor |
1 | 1 | Semua display dipindah ke kanan dengan cursor |
6. Function Set.
RS R/W DB7 DB0
0 | 0 | 0 | 0 | 1 | DL | 1 | * | * | * |
* : invalid bit
Function Set digunakan untuk mengeset pemisahan data length. DL : ketika DL =1, data length diset untuk 8 bit (DB7 sampai DB0). Ketika DL =0, data length diset untuk 4 bit (DB7 sampai DB4). Untuk bit atas ditransfer lebih dulu, kemudian dilanjutkan bit bawah.
Tabel 2.3 Posisi Karakter Pada LCD Karakter 2 X 16
80 | 81 | 82 | 83 | 84 | 85 | 86 | 87 | 88 | 89 | 8a | 8b | 8c | 8d | 8e | 8f |
C0 | C1 | C2 | C3 | C4 | C5 | C6 | C7 | C8 | C9 | Ca | Cb | Cc | Cd | Ce | Cf |
Cara Kerja Menjalankan LCD :
Langkah 1 : Inisialisasi LCD
Langkah 2 : Arahkan pada alamat yang dikehendaki (lihat table alamat)
Langkah 3 : Tuliskan data ke LCD, maka karakter akan tampil pada alamat tersebut.
No comments:
Post a Comment