Custom Search

3.8.1 INTERFACE KEYPAD 4X4 KE LCD


Gambar 3.22. Interface keypad dengan output ke LED

;Percobaan 3.8.1.


;pada percobaan ini, setiap pengambilan data dari keypad maka data akan dikeluarkan

;pada LED sesuai dengan tombol yang ditekan, sebagai contoh:

;bila tombol 1 ditekan maka = LED akan mempunyai kondisi 00000001,

;artinya LED0 akan nyala, dan seterusnya.

kolom1 bit P1.4
kolom2 bit P1.5
kolom3 bit P1.6
kolom4 bit P1.7
baris1 bit P1.0
baris2 bit P1.1
baris3 bit P1.2
baris4 bit P1.3
;
keydata equ 70h
keybounc equ 71h
org 0h
mulai: Acall keypad4x4 ;memanggil subrutine keypad4x4
Mov A,keydata ;A = keydata
Cjne A,#0FFh,terus ;Bandingkan A dengan FF, bila tidak sama ke Terus
sjmp mulai ;Disinilah awal dari LOOPING FOREVER
terus: CPL A ;A = NOT A
Mov P0,A ;P0 = A
Sjmp mulai ;Disinilah awal dari LOOPING FOREVER
;
delay: mov R0,#0
delay1: mov R2,#50
djnz R2,$
djnz R0,delay1
ret
;

;====================================
; subroutine untuk pembacaan data keypad 4x4
;====================================


Keypad4x4:
mov keybounc,#50 ; keybounc = 50
mov keyport,#0FFh ; keyport=P1= FF
clr kolom1 ; Kolom1= P1.4 = 0
ul1: jb baris1,key1 ; Lompat ke Key1 jika Baris1=P1.0=1
djnz keybounc,ul1
mov keydata,#0ch ; Keydata =0Ch
ret
key1: jb baris2,key2 ; Lompat ke Key2 jika Baris2=P1.1=1
djnz keybounc,key1
mov keydata,#0dh ; Keydata = 0Dh
ret
key2: jb baris3,key3 ; idem
djnz keybounc,key2
mov keydata,#0eh
ret
key3: jb baris4,key4 ; idem
djnz keybounc,key3
mov keydata,#0fh
ret
;
key4: setb kolom1
clr kolom2
jb baris1,key5
djnz keybounc,key4
mov keydata,#0bh
ret
key5: jb baris2,key6
djnz keybounc,key5
mov keydata,#9
ret
key6: jb baris3,key7
djnz keybounc,key6
mov keydata,#6
ret
key7: jb baris4,key8
djnz keybounc,key7
mov keydata,#3h
ret
;
key8: setb kolom2
clr kolom3
jb baris1,key9
djnz keybounc,key8
mov keydata,#0
ret
key9: jb baris2,key10
djnz keybounc,key9
mov keydata,#8
ret
key10: jb baris3,key11
djnz keybounc,key10
mov keydata,#5
ret
key11: jb baris4,key12
djnz keybounc,key11
mov keydata,#02
ret
;
key12: setb kolom3
clr kolom4
jb baris1,key13
djnz keybounc,key12
mov keydata,#09
ret
key13: jb baris2,key14
djnz keybounc,key13
mov keydata,#07
ret
key14: jb baris3,key15
djnz keybounc,key14
mov keydata,#04
ret
key15: jb baris4,key16
djnz keybounc,key15
mov keydata,#01
ret
key16: mov keydata,#0FFh ; bila tombol tidak ada yang menekan maka

; keydata =0FFh
ret
end




Gambar 3.23. Rangkaian interface keypad dengan display LCD Character

;Rencanakan program pengambilan data dari keypad dengan display ke Layar ;LCD Karakter 2 x 16

;Pada program yang akan anda buat ini, setiap pengambilan data dari keypad

;akan ditampilkan pada layar LCD Karakter


Gambar 3.24. Rangkaian interface keypad dengan display 7 Segmen

; Rencanakan program pengambilan data keypad dengan display 7 Segmen

; Pada program ini setiap data yang diambil dari keypad akan ditampilkan

; pada 7 segmen -> misal pada Segmen pertama ( ujung kanan )

0 comments:

Post a Comment

Informasi Pilihan Identitas:
Google/Blogger : Khusus yang punya Account Blogger.
Lainnya : Jika tidak punya account blogger namun punya alamat Blog atau Website.
Anonim : Jika tidak ingin mempublikasikan profile anda (tidak disarankan).

Artikel yang serupa