Penulis : Ibnu Budi R. Agustus 2006
BAB 4 PEMBACAAN TOMBOL KEYPAD MATRIK
Didalam program salah satu lajur difungsikan sebagai input masukan
dan lainnya sebagai output keluaran. Lajur yang berfungsi sebagai output, dalam satu waktu yang sama hanya terdapat satu lajur saja yang berlogika nol
‘0’ dan sisanya berlogika satu ‘1’. Perhatikan gambar 4.1
Gambar 4.1. Rangkaian Tombol KeyPad Matrik
Seperti pada gambar 4.1. tombol keypad matrik sebagai contoh dipasang pada port 2, untuk konfigurasi baris
P2.0, P2.1,P2.2,P2.3 dan untuk
kolom P2.4,P2.5,P2.6. Pola pembacaannya adalah jika tombol nol ‘0’ ditekan
maka bit P2.0 dan P2.4 terhubung, tombol empat ‘4’ ditekan maka P2.1 dan P2.5 terhubung. Pengaturan konfigurasi keypad matrik pada Program TopView
Simulator dapat dipilih menu
FileExternal Modules SettingKeyBoard ,
kemudian pilih frame ‘Matrik KeyPad’ dan pilih ‘3x4’ sesuaikan dengan perangkat yang akan digunakan, selanjutnya aturlah konfigurasi keypad matrik
sesuai dengan skema tombol keypad matrik, perhatikan gambar 4.2.
13
Penulis : Ibnu Budi R. Agustus 2006
Gambar 4.2. Pemilihan KeyPad Matrik
Contoh program pembacaan Keypad Matrik
;======================================= ; Program demo keypad 3x4 dipasang
; pada port 3, output pada port 1
;=======================================
kolom1
kolom2 kolom3
baris1 baris2
baris3 baris4
bit bit
bit bit
bit bit
bit
p3.0 ; kiri 1,4,7,redial
p3.1 p3.2
p3.3 ; atas 1,2,3
p3.4 p3.5
p3.6
keyport
keydata keybounc
equ P3
equ 50h
equ 51H
org 0h
ulang: call Keypad3x4
mov A,keydata
cjne A,0FFH,ditekan
jmp ulang
ditekan: cpl
A mov
P1,A jmp
ulang
;====================================
; routine u baca keypad 3x4
14
Penulis : Ibnu Budi R. Agustus 2006 ; output pd keydata0-9,E=redial,F=
;====================================
Keypad3x4: mov
keybounc,50 mov
keyport,0FFh clr
ul1: jb
kolom1 baris1,key1
djnz keybounc,ul1
mov keydata,1
ret key1: jb
baris2,key2 djnz
keybounc,key1 mov
keydata,4 ret
key2: jb baris3,key3
djnz keybounc,key2
mov keydata,7
ret key3: jb
baris4,key4 djnz
keybounc,key3 mov
keydata,0Eh ret
key4: setb kolom1
clr jb
kolom2 baris1,key5
djnz keybounc,key4
mov keydata,2
ret key5: jb
baris2,key6 djnz
keybounc,key5 mov
keydata,5 ret
key6: jb baris3,key7
djnz keybounc,key6
mov keydata,8
ret key7: jb
baris4,key8 djnz
keybounc,key7 mov
keydata,0 ret
15
Penulis : Ibnu Budi R. Agustus 2006
key8: setb kolom2
clr jb
kolom3 baris1,key9
djnz keybounc,key8
mov keydata,3
ret key9: jb
baris2,key10 djnz
keybounc,key9 mov
keydata,6 ret
key10: jb baris3,key11
djnz keybounc,key10
mov keydata,9
ret key11: jb
baris4,key12 djnz
keybounc,key11 mov
keydata,0Fh ret
key12: mov keydata,0FFh
ret end
16
Penulis : Ibnu Budi R. Agustus 2006
BAB 5 INTERFACE LCD