SISTEM MIKROKONTROLER
ANTARMUKA MIKROKONTROLER DENGAN PENAMPIL LCD (Liquid
Crystal Display)
Disusun untuk Memenuhi Matakuliah LAB PTE03
Dibimbing oleh Ibu Dyah Lestari
Oleh:
Kelompok 9
1.Lazuardi Eka (150534603659)
2.Muhammad Fauzi Al-asyari (150534602120)
3.Muhammad Bayu Setya Atmaja (150534600431)
MODUL V
ANTARMUKA MIKROKONTROLER DENGAN PENAMPIL LCD (Liquid
Crystal Display)
TUJUAN
LCD M1632
Modul LCD M1632 seperti dalam Gambar 5.1 merupakan modul LCD
dengan tampilan 16 x 2 baris dengan konsumsi daya yang rendah. Modul ini
dilengkapi dengan mikrokontroler yang didisain khusus untuk mengendalikan
LCD. Mikrokontroler HD44780 buatan Hitachi yang berfungsi sebagai
pengendali LCD ini mempunyai CGROM (Character Generator Read Only
Memory), CGRAM (Character Generator Random Access Memory), dan
DDRAM (Display Data Random Access Memory).
0V (GND)
+5V
LCD Contrast Voltage
Register Select; H: Data Input; L:
Instruction Input
H:Read; L: Write
Enable Signal
Data Bus 0
Data Bus 1
Data Bus 2
1
0
1
1
1
2
1
3
1
4
1
5
1
6
D3
Data Bus 3
D4
Data Bus 4
D5
Data Bus 5
D6
Data Bus 6
D7
Data Bus 7
V+BL
V-BL
DDRAM
DDRAM adalah merupakan memori tempat karakter yang
ditampilkan berada. Contoh, untuk karakter A atau 41H yang ditulis
pada alamat 00, maka karakter tersebut akan tampil pada baris pertama
dan kolom pertama dari LCD. Apabila karakter tersebut ditulis di alamat
40, maka karakter tersebut akan tampil pada baris kedua kolom pertama
dari LCD. Posisi ini ditunjukkan dalam Gambar 5.2.
1
1
1
1
1
1
1
set PC/Laptop yang sudah berisi program Code Vision dan Khazama
buah catu daya DC +5V
buah multimeter
buah ISP Downloader AVR
buah sistem minimum AVR
buah LCD
buah kabel printer USB
PROSEDUR
1.
4.
5.
Buatlah file source (.c) kemudian hubungkan file project dengan file
source seperti pada praktikum sebelumnya.
6.
7.
8.
9.
Compile dan Build program jika ada yang error perbaiki program.
Masukkan file hex menggunakan Khanzama AVR Programer. Klik auto
program, amati tampilan LCD.
10.
11.
Compile dan Build program jika ada yang error perbaiki program.
Masukkan file hex menggunakan Khanzama AVR Programer. Klik auto
program, amati tampilan LCD.
Hapus program yang ada di dalam while. Tuliskan program berikut di
dalam while(1).
while (1)
{
lcd_gotoxy(0,0);//menempatkan kursor di baris 0 kolom 0
lcd_putsf("Saya belajar");//menampilkan string Saya belajar
}
Compile dan Build program jika ada yang error perbaiki program.
Masukkan file hex menggunakan Khanzama AVR Programer. Klik auto
program, amati tampilan LCD.
Hapus program yang ada di dalam while. Tuliskan program berikut di
dalam while(1).
12.
13.
14.
15.
16.
Compile dan Build program jika ada yang error perbaiki program.
Masukkan file hex menggunakan Khanzama AVR Programer. Klik auto
program, amati tampilan LCD.
Hapus program yang ada di dalam while. Tuliskan program berikut di
dalam while(1).
17.
18.
19.
Compile dan Build program jika ada yang error perbaiki program.
Masukkan file hex menggunakan Khanzama AVR Programer. Klik auto
program, amati tampilan LCD.
Buatlah tampilan nama anda berjalan dari kiri ke kanan pada baris 0
dan NIM anda berjalan dari kanan ke kiri pada baris 1 (tampidlan di
baris 0 dan 1 muncul secara bersamaan).
Ubahlah nilai dalam lcd_init(16) menjadi lcd_init(40) dan lihat
perbedaannya.
2.
3.
4.
5.
6.
7.
void main ()
{
//LCD MODULE initialization
int a,b; //deklarasikan variable a dan b
lcd_init(16); //jumlah karakter yang disediakan adalah sebanyak 16 karakter.
while(1)
{
a=0; //a bernilai 0
for (b=10;b>=0;b--) //inisialisasi variabel perulangan;test variabel
perulangan;ubah variabel perulangan
{
lcd_gotoxy(a,0); //menempatkan kursor di kolom a,baris 0
lcd_putsf("Muh.Fauzi"); //menampilkan karakter "Muh.Fauzi"
lcd_gotoxy(b,1); //Menempatkan kursor di kolom b baris 1
lcd_putsf("150534602120"); //menampilkan karakter "150534602120"
a++; //kolom a akan bertambah 1 demi satu
delay_ms(500);// delay waktu dengan 500 ms
lcd_clear(); //menghapus karakter dan kursor kembali ke awal (0,0)
}
}
}
ANALISA DATA
1.
0.
lcd_putchar(0x41);
ditulis dalam bentuk bilangan heksadesimal. Sehingga pada tampilan LCD karakter A
muncul pada baris 0 kolom 0.
b.
Karakter A pada baris 0 kolom 0,Karakter 0 pada baris 1 kolom 0.Hal ini dikarenakan
pada script program terdapat : lcd_gotoxy(0,0); yang berfungsi untuk menempatkan
kursor di baris 0 kolom 0. Dan lcd_putchar(0x41); berfungsi untuk menampilkan
karakter A yang dalam script ditulis dalam bentuk bilangan heksadesimal. Oleh karena
itu pada tampilan LCD karakter A muncul pada baris 0 kolom 0. lcd_gotoxy(0,1);
berfungsi untuk menempatkan kursor di baris 1 kolom 0. Dan lcd_putchar(0x30);
berfungsi untuk menampilan karakter 0 yang dalam script ditulis dalam bentuk bilangan
heksadesimal. Oleh karena itu pada tampilan LCD karakter 0 muncul pada baris 1 kolom
0.delay_ms(1000); artinya perintah untuk memberi jeda selama 1000 ms(1 detik).
Sehingga ketika program dijalankan, tampilan tiap perubahan memiliki jeda selama 1
detik.
c.
d.
e.
Kalimat Saya belajar pada baris 0 kolom 0 dan Kalimat Antarmuka LCD pada
baris 1 kolom 0.Hal ini dikarenakan pada script program terdapat :
lcd_gotoxy(0,0); yang berfungsi untuk menempatkan kursor di baris 0 kolom 0.
lcd_putsf("Saya belajar"); berfungsi untuk menampilkan string Saya belajar
lcd_gotoxy(0,1); berfungsi untuk menempatkan kursor di baris 1 kolom 0
lcd_putsf("Antarmuka LCD"); berfungsi untuk menampilkan string Antarmuka
LCD.
2.
3.