Minggu, 26 Juni 2011

scanning keypad matrik 2x6

Model dari keypad matriks 2x6 dan struktur pinnya dihubungkan pada port 1 pada mikrokontroller. Model ini berfungsi dimana satu tombol keypad diimplementasikan menggunakan satu buah tombol tekan (push button)

Prinsip kerja untuk keypad 2x6:
Saat button '0' ditekan row 0 dan coloumn 0 terhubung
Saat button '1' ditekan row 0 dan coloumn 1 terhubung
Saat button '2' ditekan row 0 dan coloumn 2 terhubung
Saat button '3' ditekan row 0 dan coloumn 3 terhubung
Saat button '4' ditekan row 0 dan coloumn 4 terhubung
Saat button 'inc' ditekan row 0 dan coloumn 5 terhubung
Saat button '5' ditekan row 1 dan coloumn 0 terhubung
Saat button '6' ditekan row 1 dan coloumn 1 terhubung
Saat button '7' ditekan row 1 dan coloumn 2 terhubung
Saat button '8' ditekan row 1 dan coloumn 3 terhubung
Saat button '9' ditekan row 1 dan coloumn 4 terhubung
Saat button 'del' ditekan row 1 dan coloumn 5 terhubung 
 
Teknik keypad scanning secara software
cara scanning keypad2x6 (menyimpan data di key_data). Mula-mula check row (baris) misal scan row0, kemudian ada branch atau percabangan: Apakah key di row 0 tertekan? bila ya maka nilai rownya akan diambil bila tidak maka akan lanjut untuk mengecek ke row berikutnya yaitu row2. Bila kedua row tidak ada yang tertekan maka end_scan dan mengulang ke row 0. Bila salah satu row tertekan maka akan dilihat coloumn mana yang tertekan dan hasilnya dicocokan sesuai yang telah dituliskan pada listing. misal row 0 dan coloumn 0 yang tertekan maka yang muncul pada layar adalah angka 0 desimal dan seterusnya.

Tabel kebenaran
Row      Coloumn       Hasil
   0               0                 0
   0               1                 1
   0               2                 2
   0               3                 3
   0               4                 4
   0               5                inc
   1               0                 5
   1               1                 6
   1               2                 7
   1               3                 8
   1               4                 9
   1               5                del
 
decoding nilai dari tombol yang ditekan, sama seperti tabel diatas.mula-mula dicheck row mana yang ditekan baru kolom mana yang ditekan dan diperoleh hasil. bila yang ditekan menghasilkan data maka akan ditampilkan pada layar bila command maka dijump ke perintah yang berisi operasi tersebut increase atau delete.

1 komentar: