Senin, 04 Januari 2010

Latihan No.4 "Keypad 4x4 dengan Smart-AVR Basic"



Fasilitas yang dipunyai oleh system ini adalah masukan keypad 4x4, dimana keypad yang saya rancang menggunakan cara pembagi tegangan, berbeda dengan keypad pada umumnya yang menggunakan cara paralel (lajur dan baris). Keypad ini hanya menggunakan tiga kabel saja untuk dihubungkan ke system Smart-AVR Basic yaitu positive (Aref), negative (GND) dan Vout (ADC0), rangkaian lengkapnya telah saya bahas pada pembahasan Smart-AVR Basic yang telah lalu.


Untuk mencoba keypad 4x4 ini perlu dibuat rangkaian seperti saya gambarkan diatas.
Ada dua program yang akan saya berikan yaitu pembacaan nilai keypad tiap tombol dan perintah FN:KEY yaitu perintah untuk memasukkan 4 digit BCD. Untuk contoh program yang pertama adalah sebagai berikut:

'************************************
'MEMBACA KEYPAD DI TAMPILKAN DI LCD
'************************************

START:
GOSUB JUDUL

MAIN:
READ KEY
HHI = 0
HLO = KEY
FN:HEX2BCD
LOCATE = 64

TEXT: DATA KYPD =
VAR0 = BCD43 AND 15
D2ASC = VAR0
FN:DASC
LCDDATA = D2ASC
WRITE LCD
VAR0 = BCD21 AND 240
SWAP = VAR0
FN:SWAP
D2ASC = SWAP
FN:DASC
LCDDATA = D2ASC
WRITE LCD
VAR0 = BCD21 AND 15
D2ASC = VAR0
FN:DASC
LCDDATA = D2ASC
WRITE LCD
DELAY = 10
GOTO MAIN

JUDUL:
CLRLCD
LOCATE = 0
TEXT: press any key
RETURN


Dalam program diatas system akan menampilkan nilai keypad yang ditekan ke LCD Module sesuai dengan tabel keypad 4x4 yang ada (lihat dalam pembahasan yang lalu)
Untuk program berikutnya adalah penggunaan FN:KEY contoh programnya seperti berikut:


'******************************
'MEMBACA KEYPAD DENGAN FN:KEY
'******************************
START:
CLRLCD
TEXT: FN:KEY

LOOP1:
LOCATE = 64
'PRESS NUMBER HERE
TEXT: 4DIGIT -->
FN:KEY
DELAY = 50
GOTO LOOP1


Pada contoh program diatas, setelah di download maka system akan menampilkan tulisan "FN:KEY" ke LCD module line 1 dan 4DIGIT --> pada line 2. System akan menunggu sampai diberikan masukan 4 digit angka (0 s/d 9).
Selamat mencoba.

Tidak ada komentar:

Posting Komentar