Belajar Arduino : Pengujian Tombol Keypad 4x4 di Serial Monitor

Assalamualaikum sobat, pada tutorial kali ini kita akan belajar untuk mengakses keypad 4x4 dan menampilkan hasil penekanan tombolnya di serial monitor arduino IDE.

Bahan-bahan

  • Arduino UNO
  • Keypad 4x4
  • kabel jumper


Skematik


Keterangan Skematik
  • pin 9 arduino dihubungkan ke kaki 1 keypad
  • pin 8 arduino dihubungkan ke kaki 2 keypad
  • pin 7 arduino dihubungkan ke kaki 3 keypad
  • pin 6 arduino dihubungkan ke kaki 4 keypad
  • pin 5 arduino dihubungkan ke kaki 5 keypad
  • pin 4 arduino dihubungkan ke kaki 6 keypad
  • pin 3 arduino dihubungkan ke kaki 7 keypad
  • pin 2 arduino dihubungkan ke kaki 8 keypad


Langkah-langkah
  • hubungkan pin arduino dengan pin keypad sesuai dengan skematik
  • hubungkan arduino ke laptop/PC menggunakan kabel data
  • Jalankan aplikasi Arduino IDE
  • pastikan port dan jenis arduino yang digunakan sesuai (lihat di menu tools arduino IDE) supaya tidak terjadi error
  • Masukan kode program dibawah, kemudian upload ke papan arduino

Kode Program

//Memanggil library keypad.h
#include <Keypad.h>

//Mendefinisikan jumlah baris dan kolom keypad yang digunakan
const byte jumlahBaris = 4;
const byte jumlahKolom = 4;

//Memetakan tombol keypad
char petaTombol[jumlahBaris] [jumlahKolom] =
{
 {'1','2','3','A'},
 {'4','5','6','B'},
 {'7','8','9','C'},
 {'*','0','#','D'},
};

//Mendefinisikan koneksi pin antara arduino dan keypad 4x4
byte pinBaris[jumlahBaris] = {9, 8, 7, 6};
byte pinKolom[jumlahKolom] = {5, 4, 3, 2};

//Mendefinisikan (Membuat) keypad
Keypad tombol = Keypad(makeKeymap(petaTombol), pinBaris, pinKolom, jumlahBaris, jumlahKolom);

void setup() {

  Serial.begin(9600);
}

void loop() {
  //Variabel untuk menyimpan data jika terjadi penekanan pada tombol keypad
  char tombolDitekan = tombol.getKey();

  //Kondisi jika tombol ditekan
  if(tombolDitekan != NO_KEY)
  {
    Serial.print(tombolDitekan);
  }
}


Keterangan Kode Program

Kode berikut  digunakan untuk menyertakan pustaka (library) keypad :

#include <Keypad.h>

Kode berikut digunakan untuk membentuk keterangan tombol-tombol pada keypad :

char petaTombol[jumlahBaris] [jumlahKolom] =
{
 {'1','2','3','A'},
 {'4','5','6','B'},
 {'7','8','9','C'},
 {'*','0','#','D'},
};

Kode berikut digunakan untuk mendeklarasikan pin arduino (pin 9, 8, 7, dan 6) yang terhubung ke pin baris keypad :

byte pinBaris[jumlahBaris] = {9, 8, 7, 6};

Kode berikut digunakan untuk mendeklarasikan pin arduino (pin 5, 4, 3, dan 2) yang terhubung ke pin kolom keypad :

byte pinKolom[jumlahKolom] = {5, 4, 3, 2};

Kode berikut digunakan untuk membentuk (membuat) sebuah objek bernama tombol, hal tersebut bertujuan agar arduino memahami bahwa yang kita gunakan adalah sebuah keypad 4x4, dimana program penyusunya telah kita buat sebelumnya pada baris kode diatas :

Keypad tombol = Keypad(makeKeymap(petaTombol), pinBaris, pinKolom, jumlahBaris, jumlahKolom);

Kode berikut dipakai untuk melakukan inisialisasi terhadap port serial, dengan tujuan agar kode tombol keypad yang ditekan akan dikirimkan ke port serial :

Serial.begin(9600);

Kode berikut berfungsi sebagai pembacaan terhadap tombol yang ditekan, dalam hal ini fungsi getKey()akan menghasilkan NO_KEY jika tidak ada tombol yang ditekan :

char tombolDitekan = tombol.getKey();

Kode berikut menyatakan jika nilai pada variabel tombolDitekan tidak berupa NO_KEY, artinya terdapat tombol yang ditekan, itulah kenapa, nilai kode hanya akan dikirim ke port serial jika nilai tombolDitekan tidak berupa NO_KEY :

if(tombolDitekan != NO_KEY)
  {
    Serial.print(tombolDitekan);
  }

Video Tutorial


Sekian untuk tutorial kali ini, sampai jumpa di lain kesempatan, Wassalamualaikum wr wb.

1 komentar untuk "Belajar Arduino : Pengujian Tombol Keypad 4x4 di Serial Monitor"

  1. Mas, kalo fungsi keypadnya satu kode keypad di buat jadi 2 fungsi gimana mas? Misal tekan A masuk ke inputan nilai tekan A lagi menjalankan sistem sesuai inputan nilai tersebut

    BalasHapus