Anda di halaman 1dari 5

FAKULTAS TEKNIK

UNIVERSITAS NEGERI YOGYAKARTA


LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/01  Revisi : 01  Senin 010411  Hal. 1 dari 5 hal. 
Sem.:Genap  LCD TEXT 4 x 50 menit
 
A. Teori Singkat
LCD (Liquid Crystal Display) dapat diprogram agar bekerja sesuai dengan aplikasi
yang telah dirancang. LCD pada prinsipnya sama dengan penampil dot matrik. Jenis-jenis
LCD yang ada dipasaran ada dua jenis yaitu LCD teks dan LCD Grafik. Pada labsheet ini
akan dicoba mengulas LCD teks saja sebagai pengenalan, sementara untuk LCD grafik dapat
dipelajari sendiri.
LCD Teks adalah jenis LCD yang digunakan untuk menampilkan teks atau angka
dalam kode ASCII. Tidak seperti LCD lainnya, LCD teks yang ada dibagi ke dalam sel,
dimana tiap selnya hanya dapat menampilkan karakter ASCII. Oleh karena itu LCD tersebut
hanya dapat menampilkan karakter ASCII sehingga jenis ini disebut LCD Teks, sedangkan
Graphic LCD dapat menampilkan gambar. Setiap sel dari teks LCD memuat "dot" kristal cair
yang dikombinasi dan "tersembunyi" atau " " titik-titik akan membentuk karakter untuk
ditampilkan.
Teks pada LCD, bentuk karakternya telah sesuaikan. Ukuran Teks LCD ditentukan
oleh jumlah karakter yang dapat ditampilkan pada satu baris dan LCD memiliki baris total.
Misalnya, LCD 16x2, dimana LCD ini mempunyai 2 baris dan setiap barisnya dapat
menampilkan hingga 16 karakter. Beberapa ukuran umum adalah Teks LCD 16x1, 16x2,
16x4, 20x2, 20x4. Gambar dibawah ini adalah contoh LCD Teks 16x2.

Gambar 1. Teks LCD 16x2.

Cara berkomunikasi pada Teks LCD ada dua yaitu secara serial (seperti I2C) dan
paralel. Dalam unit tulisan ini akan disampaikan LCD dengan komunikasi paralel,
khususnya oleh chip controller LCD 16x2 HD44780U dari Hitachi. LCD seri HD44780U
dianggap standar secara umum untuk semua jenis LCD teks, sehingga dapat menggunakan
program dalam contoh ini untuk menguji LCD, selain itu juga dengan LCD yang sudah
dianggap standar maka baik rangkaian mapun program hanya sedikit mengalami perubahan
atau bahkan tanpa perlu diedit.
Seri HD44780U merupakan pengendali LCD untuk format Teks matriks LCD (dot-
matrix), chip ini dapat digunakan untuk satu atau dua baris layar LCD. HD44780U memiliki
dua mode komunikasi adalah 4 bit dan 8 bit. LCD ini berisi 208 karakter tersedia dengan
ukuran 32 sampel font, font karakter 5x8 dan 5x10 (total sampel 240 karakter yang berbeda).

Peta kaki LCD Teks


LCD Teks standar HD44780U mempunyai 16 kaki, dengan kaki 14 dan 2 pengontrol kaki
untuk sumber daya listrik "LED cahaya background." Berikut adalah susunan pin LCD
bertipe 44780:
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/01  Revisi : 01  Senin 010411  Hal. 2 dari 5 hal. 
Sem.:Genap  LCD TEXT 4 x 50 menit
 
Tabel 1. Peta kaki.

Fungsi Pin deskripsi Data Logika Keterangan


Ground 1 VSS (Ground) - 0V
Tegangan sumber 2 VDD (VCC) - +5V
Kontras 3 VEE - 0-Vdd
0
4 RS
1
0
5 R/W
Kendali LCD 1
0
6 E 1
floating
7 D0 0/1 Bit 0
8 D1 0/1 Bit
9 D2 0/1 Bit
10 D3 0/1 Bit
Data
11 D4 0/1 Bit
12 D5 0/1 Bit
13 D6 0/1 Bit
14 D7 0/1 Bit
backlight, lampu
Anoda 15 -
background
backlight, lampu
Katoda 16 -
background

Dua kaki LED Backlight LCD adalah nomor 15 dan 16 tetapi dalam beberapa kasus dua kaki
itu dicatat sebagai anoda (A) dan katoda (K). Gambar dibawah menjelaskan hubungan
kontroler LCD dengan sumber.

Gambar 2. Teks LCD sambungan.

Pemrograman LCD Karakter pada CVAVR relatif lebih mudah dibandingkan jika
menggunakan software standar C, seperti WinAVR. Langkah pertama saat menggunakan
LCD adalah melakukan inisialisasi LCD melalui project awal menjalankan Codevision AVR.
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/01  Revisi : 01  Senin 010411  Hal. 3 dari 5 hal. 
Sem.:Genap  LCD TEXT 4 x 50 menit
 
Perintah-perintah CVAVR dalam pemrograman LCD

No Perintah LCD Keterangan


1 Lcd_clear(); Menghapus layar LCD
2 lcd_gotoxy(x,y); menempatkan kursor pd posis (x,y)-
3 lcd_putsf(“angka”); Menampilkan karakter “angka” pada flash
4 lcd_putchar(x); menampilkan karakter, atau kode ASCII x
5 lcd_puts(x); Menampilkan karakter pada Static RAM

Contoh pemrograman
while(1)
{
// Menempatkan kursor LCD pada posisi (0,0)
lcd_gotoxy(0,0);
// Menulis kata "Latihan" dimulai dari baris (0,0)
lcd_putsf("Latihan");
// Menempatkan kursor LCD pada posisi(0,1)
lcd_gotoxy(0,1);
// menulis karakter ASCII 65, yaitu huruf "A"
lcd_putchar(65);
}

Menampilkan nilai pada static RAM


while(1)
{
// Deklarasi memori buffer
char lcd_buffer[8];
// Deklarasi variabel "Angka"
int Angka = 1234;
// Simpan variable "Angka" pada memori lcd_buffer
sprintf(lcd_buffer,"%i",Angka);
// Tampilkan pada LCD
lcd_puts(lcd_buffer);
}

B. Rangkaian
Rangkaian 1
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/01  Revisi : 01  Senin 010411  Hal. 4 dari 5 hal. 
Sem.:Genap  LCD TEXT 4 x 50 menit
 

C. Program
Program 1
#include <mega16.h>
#include <stdio.h>
#include <lcd.h>

#asm
.equ __lcd_port=0x15 ;PORTC
#endasm

void main(void)
{

lcd_init(16);
lcd_putsf("LATIHAN LCD");

Program 2
#include <mega16.h>
#include <stdio.h>
#include <lcd.h>

#asm
.equ __lcd_port=0x15 ;PORTC
#endasm

void main(void)
{
lcd_init(16);

while (1)
{
lcd_gotoxy(0,0);
lcd_putsf("LATIHAN LCD");
delay_ms(100);
lcd_clear();
delay_ms(100);
};
}

Program 3
#include <mega16.h>
#include <stdio.h>
#include <lcd.h>

#asm
.equ __lcd_port=0x15 ;PORTC
#endasm

unsigned char dataku[16];


float hasil;

void main(void)
{
FAKULTAS TEKNIK
UNIVERSITAS NEGERI YOGYAKARTA
LABSHEET PRAKTIKUM MIKROKONTROLLER
No. : ST/EKA/ EKA263/01  Revisi : 01  Senin 010411  Hal. 5 dari 5 hal. 
Sem.:Genap  LCD TEXT 4 x 50 menit
 
lcd_init(16);

lcd_clear();
hasil = 79.3 * 30.1;
sprintf(dataku, "79.3x30.1=%.2f", hasil);
lcd_gotoxy(0,0);
lcd_puts(dataku);

D. Tugas
1. Gambarkan rangkaian mikrokontroller seperti pada gambar rangkaian 1 dan 2, beri nama
file untuk rangkaian 1 jadi NIM_ANDA_51 dan rangkaian 2 jadi NIM_ANDA_52
2. Tulislah program pada Program1 s.d program2 untuk gambar rangkaian mikrokontroller
ATMEGA16 dengan CVAVR
3. Lakukan konversi menjadi file dengan berextensi .c menjadi berextensi .COF dan .HEX
yang siap dimasukan ke dalam mikrokontroller
4. Gambarkan rangkaian diatas pada simulasi Proteus
5. Masukan file yang berextensi COF atau HEX ke dalam mikrokontroller ATMEGA16
6. Lakukan penekanan Tombol PLAY pada proteus amati apa yang terjadi
7. Buatlah rangkaian LCD 2x16 yang disambung pada PORTB dengan mikrokontroller
ATMEGA16.
8. Pada rangkaian soal no 7, Buatlah program untuk rangkaian 1 menampilkan hitungan up-
counter 000 s.d 999
9. Pada rangkaian soal no 7, Buatlah program untuk menampilkan jam:menit:detik
10. Buat gambar rangkaian LCD yang dilengkapi dengan Tombol1 START, Tombol2
STOP dan tombol2 RESET, kemudian Buatlah program untuk membuat STOP-
WATCH

Anda mungkin juga menyukai