PRAKTEK-3
LCD KARAKTER
·
TUJUAN:
1. Mahasiswa memahami
rangkaian interface mikrokontroller dengan LCD Karakter 2 x 16 .
2. Mahasiswa dapat memahami
program assembly untuk menampilkan data ke LCD Karakter 2 x 16 .
3. Mahasiswa memahami beberapa
instruksi assembly dasar, MOV, Setb, Clr, dan waktu tunda .
4. Mahasiswa memahami mencetak
karakter pada posisi baris dan kolom tertentu .
Gambar. Rangkaian
interface ke LCD Karakter 2 x16
Modul LCD Character dapat dengan mudah dihubungkan
dengan mikrokontroller seperti AT89S51.LCD yang akan kita praktikumkan ini
mempunyai lebar display 2 baris 16 kolom atau biasa disebut sebagai LCD
Character 2x16, dengan 16 pin konektor, yang didifinisikan sebagai berikut:
Gambar. Modul LCD
Karakter 2x16
·
INISIALISASI
Sebelum kita dapat menggunakan
modul LCD, kita harus melakukan inisialisasi dan mengkonfigurasikannya. Hal ini
dijalankan dengan mengirimkan sejumlah instruksi ke LCD. Antara lain:
pengaturan lebar data interface 8 bit atau 4 bit data bus, pemilihan ukuran
font karakter 5x8 atau 5x7 dan lain-lain, dengan instruksi sebagai berikut.
Init_lcd:
mov
r1,#00000001b ;Display clear
call
write_inst ;EN=pulse
dan RS=0
mov
r1,#00111000b ;Function set,
;Data 8 bit,2 line font 5x7
call
write_inst ;Set
bit EN=pulse dan RS=0
mov
r1,#00001100b ;Display on,
;cursor off,cursor blink off
call
write_inst ;EN=pulse
dan RS=0
mov
r1,#00000110b ;Entry mode,
Set increment
call
write_inst
ret
Contoh Latihan :
1. Membuat
Sebuah Karakter pada LCD Karakter
berikut kode programnya :
org 0000h
call
init_LCD
start: mov
R1,#80h ;
Lokasi Display RAM, Row=1 Col=1
call
write_inst
mov
R1,#'A' ; Cetak Karakter A
call
write_data
stop:
sjmp stop
Init_lcd:
mov
r1,#00000001b ;Display clear
call
write_inst
mov
r1,#00111000b ;Function
set,Data 8 bit,2 line font 5x7
call
write_inst
mov
r1,#00001100b ;Display on,
;cursor off,cursor blink off
call
write_inst
mov
r1,#00000110b ;Entry mode,
Set increment
call
write_inst
ret
;
Write_inst:
clr
P3.6 ; P3.6 = RS =0
mov P0,R1 ; P0 = D7 s/d D0 = R1
setb
P3.7 ; P3.7 =EN = 1
call
delay ; call delay time
clr
P3.7 ; P3.7
=EN = 0
ret
;
Write_data:
setb
P3.6 ; P3.6
= RS =1
mov
P0,R1 ; P0 = D7
s/d D0 = R1
setb
P3.7 ; P3.7 =EN = 1
call
delay ; call delay time
clr
p3.7 ; P3.7 =EN = 0
ret
;
delay: mov R0,#0
delay1:mov R7,#0fh
djnz
R7,$
djnz
R0,delay1
ret
;
End
Berikut beberapa langkah2 untuk membuat program diatas :
1. Pasang jumper LCD_EN, yang berfungsi untuk memberikan power supply +5V
2. Hubungkan modul Microcontroller Trainer dengan power supply +5V
3. Hubungkan modul Microcontroller Trainer dengan rangkaian programmer
4. Buka Program M-IDE Studio for MCS-51, sebagai editor dan compiler program
5. Ketik program diatas
6. Simpanlah program yang anda ketik dan beri nama : prog41a.asm
7. Pada program MIDE tersebut pilih Build /F9 atau untuk melakukan kompilasi program dari *.asm ke *.hex.
8. Lakukan pemrograman mikrokontroller dengan menggunakan Program ISP Software ( Lihat Petunjuk Penggunaan)
9. Lakukan pengamatan pada LED.
Semoga bermanfaat.Mohon maaf jika ada kesalahan atau kekurangan dari postingan saya karena saya juga masih dalam tahap belajar. ^_^
Tidak ada komentar:
Posting Komentar