Você está na página 1de 13

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.

com

1 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

inkubator-teknologi.com
Belajar mikrokontroler ? kesini aja

2 Teknik Membaca keypad dengan microcontroller


Posted on May 8, 2012 by admin

Keypad, saya yakin anda sudah tidak asing lagi dengan istilah tersebut. Setiap saat anda selalu memencetnya.
Tulis sms-lah, update status-lah, atau hanya sekedar supaya terlihat sok sibuk hehe..
Yang saya maksud tadi adalah keypad HP (tidak berlaku bagi yang HP nya touch screen lho). Nah keypad yang
akan dibahas ini adalah keypad yang biasa dipakai aplikasi bersama mikrokontroler. Fungsinya sebagai tombol
masukan untuk member sebuah nilai. Beberapa contoh keypad :

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

2 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

Keypad 3x4

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

3 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

Keypad 4x4

Kalo dibongkar maka ketahuan bahwa dalemnya saklar yang disusun secara matrik, ada baris dan kolomnya.

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

4 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

Interfacing keypad dengan mikrokontroler juga sangat gampang. Tinggal hubungkan masing masing pin ke
kaki mikrokontroler, contohnya kayak gini :

Membacanyapun juga tidak susah susah amir, apalagi kalau pakai BASCOM-AVR. Paling tidak ada 2 cara
untuk membaca tombol keypad ini.
Cara pertama.
Kita ambil contoh keypad ukuran 34. Cara pertama ini kita tinggal pakai fungsi yang sudah ada di
BASCOM-AVR, yaitu : Getkbd().
Program lengkapnya begini :
$regfile = m16def.dat
$crystal = 16000000
19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

5 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.2 , Db4 = Portc.4


Config Lcdpin = Pin , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7
Config Lcd = 16 * 2
Cursor Off
Cls
Lcd Tombol=
Config Kbd = Porta
Dim Keypad As Byte
Do
Keypad = Getkbd()
If Keypad <> 16 Then
Gosub Get_keypad
Waitms 350
End If
Loop
End
Get_keypad:
Locate 1 , 8
Select Case Keypad
Case 19 : Lcd 0
Case 0 : Lcd 1

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

6 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

Case 4 : Lcd 2
Case 8 : Lcd 3
Case 1 : Lcd 4
Case 5 : Lcd 5
Case 9 : Lcd 6
Case 2 : Lcd 7
Case 18 : Lcd 8
Case 10 : Lcd 9
Case 3 : Lcd *
Case 11 : Lcd #
End Select
Return
End
Cara kedua.
Cara konvensional, walaupun saya sering pakai yang ini. Aktifkan secara berurutan kolomnya kemudian dibaca
logika barisnya.
$regfile = m16def.dat
$crystal = 16000000
Config Lcdpin = Pin , Rs = Portc.0 , E = Portc.2 , Db4 = Portc.4
Config Lcdpin = Pin , Db5 = Portc.5 , Db6 = Portc.6 , Db7 = Portc.7

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

7 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

Config Lcd = 16 * 2
Cursor Off
Cls
Lcd Tombol=
Ddra = &B11110000
Porta = &B11111111
Do
Porta = &B11101111
If Pina.0 = 0 Then
Locate 1 , 8
Lcd 1
Elseif Pina.1 = 0 Then
Locate 1 , 8
Lcd 4
Elseif Pina.2 = 0 Then
Locate 1 , 8
Lcd 7
Elseif Pina.3 = 0 Then
Locate 1 , 8
Lcd *
End If
kolom 2

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

8 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

Porta = &B11011111
If Pina.0 = 0 Then
Locate 1 , 8
Lcd 2
Elseif Pina.1 = 0 Then
Locate 1 , 8
Lcd 5
Elseif Pina.2 = 0 Then
Locate 1 , 8
Lcd 8
Elseif Pina.3 = 0 Then
Locate 1 , 8
Lcd 0
End If
kolom 3
Porta = &B10111111
If Pina.0 = 0 Then
Locate 1 , 8
Lcd 3
Elseif Pina.1 = 0 Then
Locate 1 , 8
Lcd 6

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

9 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

Elseif Pina.2 = 0 Then


Locate 1 , 8
Lcd 9
Elseif Pina.3 = 0 Then
Locate 1 , 8
Lcd #
End If
Loop
End
Hasilnya tampak seperti ini :

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

10 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

Oya, bagi yang mau hardware seperti gambar diatas, silahkan ambil, cukup ganti Rp 290 rb saja
(kalo tanpa keypad cukup 265 rb) dengan spec :
Berbasis ATmega16A
LCD 162 (blue backlight)
Crystal 16 MHz
3 Port Ekspansi : PORTA, PORTB, PORTD
2 button (INT0 dan INT1)
Terintegrasi dengan USB Downloader (sehingga program tinggal download aja)
Kabel USB
PCB Fiber

This entry was posted in Mikrokontroler AVR. Bookmark the permalink.

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

11 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

9 Responses to 2 Teknik Membaca keypad dengan microcontroller


jefri says:
August 12, 2012 at 6:16 pm

saya mw pesan hardwarenya gan


ne no.Hp saya gan : 085275699125
mohon cepet dconfirm ya gan???
Reply

hasni syarief says:


February 26, 2013 at 10:47 pm

saya sedang mencoba program Keypad = Getkbd() pada atmega128, saat di simulasi untuk menekan keypadnya ga bisa jalan
ya.. kira2 apa problemnya? apakah simulasi pada software berlaku juga pada kondisi sebenarnya pada hardware.. tapi untuk
Cara konvensional, makasih atas masukannya..
Reply

admin says:
March 2, 2013 at 10:04 am

Setingan keypadnya sudah benar ?


Trus coba dulu hasil dari penekanan keypad ditampilkan di LCD.
Reply

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

12 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

yogi says:
June 25, 2013 at 7:37 am

bg..mau nanya gmna cra supaya dalam penekanan keypad tidak double nampilnya di lcd walaupun ditekan lamathanks
Reply

admin says:
June 26, 2013 at 9:58 am

Dikasih anti bounching, bisa dikasih penundaan (delay) setelah tombol ditekan. Sekitar 200 300 ms.
Reply

yogi says:
June 27, 2013 at 6:18 am

cara lain ad bg??


trus stu lg bg saya bsa ga minta tlong buatin list program untuk set password
dari keypad nampilin di lcd ,sya pke bascom 8051klau bsa krim lwat email saya ya bg
yogi.frans@yahoo.com
tlong ya bg thanks
Reply

admin says:
July 8, 2013 at 4:04 pm

mohon maaf mas, saat ini lum bisa, cz masih full orderan nih..
Reply

19/08/2014 21:29

2 Teknik Membaca keypad dengan microcontroller | inkubator-teknologi.com

13 of 13

http://inkubator-teknologi.com/2-teknik-membaca-keypad-dengan-microcontroller/

Rosisk Apribra says:


November 20, 2013 at 3:03 pm

mas, ngitung casenya gmana?


Reply

admin says:
November 25, 2013 at 4:14 pm

maksudnya mas ?
Reply

inkubator-teknologi.com
Proudly powered by WordPress.

19/08/2014 21:29