Buka Senin - Jumat jam 08.30 s/d jam 16.30 , Sabtu Jam 8.30 s/d jam 13.00 , Minggu tutup
  • Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
  • Selamat Datang di Indomaker ❯ Silahkan pesan produk sesuai kebutuhan anda, kami siap melayani.
Beranda » Blog » Tutorial Keypad 4×4 dan LCD 1602 Menggunakan Arduino Uno

Tutorial Keypad 4×4 dan LCD 1602 Menggunakan Arduino Uno

Diposting pada 15 February 2023 oleh indo maker / Dilihat: 10.740 kali / Kategori: ,

Keypad 4×4 berfungsi sebagai penghubung antara perangkat (mesin) elektronik dengan manusia atau dikenal dengan istilah Human Machine Interface (HMI). Papan tombol matriks 4×4 memiliki konstruksi atau susunan yang sederhana dan hemat dalam penggunaan port mikrokontroler. Keypad sering sekali kita jumpai dalam kehidupan sehari-hari contohnya meteran listrik pada rumah, kalkulator, dan keyboard komputer. LCD adalah perangkat elektronik yang digunakan sebagai luaran (Output) untuk menampilkan karakter berupa kata, huruf maupun gambar. Pada tutorial kali ini LCD digunakan untuk menampilkan karakter dari tombol keypad yang ditekan.

Gambar 1. Keypad 4×4

Keypad 4×4 terdapat 16 karakter (16 tombol) yang terdiri dari karakter angka 0-9, karakter alphabet A-D serta terdapat karakter spesial * dan #. Konfigurasi pin dari keypad 4×4 terdiri dari 4 pin baris dan 4 pin kolom seperti terlihat pada gambar dibawah ini.

Gambar 2. Pinout keypad 4×4

Untuk lebih memahami cara akses keypad serta menampilkan karakter tombol keypad yang ditekan marilah kita buat percobaan sederhana, namun sebelum itu persiapkan:

Alat dan Bahan

  1. Arduino Uno.
  2. LCD 1602 I2C.
  3. Keypad 4×4.
  4. Jumper Male to Male secukupnya.
  5. Jumper Male to female secukupnya.

Buatlah rangkaian seperti terlihat pada gambar 2 dengan konfigurasi pin:

  • R1 dihubungkan pada pin 9 Arduino Uno.
  • R2 dihubungkan pada pin 8 Arduino Uno
  • R3 dihubungkan pada pin 7 Arduino Uno.
  • R4 dihubungkan pada pin 6 Arduino Uno.
  • C1 dihubungkan pada pin 5 Arduino Uno.
  • C2 dihubungkan pada pin 4 Arduino Uno.
  • C3 dihubungkan pada pin 3 Arduino Uno.
  • C4 dihubungkan pada pin 2 Arduino Uno.
  • GND LCD I2C dihubungkan pada pin GND Arduino Uno
  • VCC LCD I2C dihubungkan pada pin 5V Arduino Uno
  • SDA LCD I2C dihubungkan pada pin A4 Arduino Uno
  • SCL LCD I2C dihubungkan pada pin A5 Arduino Uno

Gambar 3. Gambar Pengkabelan

Source Code (Enroll)

Selanjutnya buka IDE Arduino Anda (dapat diunduh di arduino.cc), dan copy-kan listing program sebagai berikut:

#include <Keypad.h>
#include <Wire.h>              // Memanggil library wire.h
#include <LiquidCrystal_I2C.h> // Memanggil library LCD dengan I2C
LiquidCrystal_I2C lcd(0x27, 16, 2); // Alamat I2C(0x27) LCD dan Jenis LCD (20x4)

const byte ROWS = 4; //4 baris
const byte COLS = 4; //4 kolom
char keys[ROWS][COLS] = {
  {'1','2','3','A'},
  {'4','5','6','B'},
  {'7','8','9','C'},
  {'*','0','#','D'}
};

byte colPins[COLS] = {5, 4, 3, 2}; // pin 2,3,4,5 untuk pin kolom keypad (lihat gambar)
byte rowPins[ROWS] = {9, 8, 7, 6}; // pin 6,7,8,9 untuk pin baris keypad (lihat gambar)

Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS );

char stringAngka[17];
int indexKeypad = 0;

void setup(){
  Serial.begin(9600);
  lcd.init();                     // instruksi untuk memulai LCD
  lcd.begin(16,2);                // instruksi untuk menggunakan lcd 20x4
  lcd.backlight();                // instruksi untuk mengaktifkan lampu latar LCD
  lcd.setCursor(4,0);             // karakter tampil pada kolom 5 baris 1 LCD 1602
  lcd.print("Tutorial");          // karakter tampil pada kolom 0 baris 2 LCD 1602
  lcd.setCursor(0,1);             //karakter tampil pada kolom 5 baris 1 LCD 1602
  lcd.print("Keypad 4x4 & LCD");  //karakter tampil pada kolom 0 baris 2 LCD 1602
  delay(2000);
  lcd.clear();
}

void loop(){
   lcd.setCursor(4,0);       //karakter tampil pada kolom 5 baris 1 LCD 1602
   lcd.print("Keypad LCD");  //karakter tampil pada kolom 0 baris 2 LCD 1602
   lcd.setCursor(0,1);       //karakter tampil pada kolom 5 baris 1 LCD 1602
   lcd.print("Tombol keypad: ");  //karakter tampil pada kolom 0 baris 2 LCD 1602
   
   char key = keypad.getKey();
   if (key) {
    Serial.println(key);
    switch (key)
    {
      case '0':                    // Instruksi untuk menampilkan karakter pada LCD dan Serial monitor
      case '1':                   
      case '2':                     
      case '3':
      case '4':
      case '5':
      case '6':
      case '7':
      case '8':
      case '9':
      case 'A':
      case 'B':
      case 'C':
      case 'D':
      case '#':
        if (!indexKeypad)
        {
          lcd.clear();
        }
        stringAngka[indexKeypad++] = key;
        lcd.setCursor(15,1);
        lcd.println(key);
        break;
      case '*':                     //Tombol * Keypad digunakan sebagai reset
        lcd.clear();
        indexKeypad = 0;
        break;
    }
 }
}

Sebelum upload program pastikan anda telah install library Keypad.h, LiquidCrystal_I2C.h, dan Wire.h. Langkah-langkah mengintall library klik sketch, include library, klik manage library, pada bagian pencarian ketik library yang anda cari, kemudian setelah library ditemukan klik install. Jika library sudah terinstall upload sketch (program di atas) dengan menekan tombol upload atau melalui shortkey CTRL+U, pastikan pengaturan board pada Arduino Uno & pastikan port yang anda gunakan sesuai dengan yang tertera pada device manager. Setelah program selesai diunggah aktifkan serial monitor kemudian tekan keypad dan amati karakter yang ditampilkan pada LCD 1602.

Gambar 4. Data serial monitor ketika tombol keypad 1 dan 2 ditekan

 

Gambar 5. Karakter LCD ketika keypad 1 ditekan

Gambar 6. Karakter LCD ketika keypad 2 ditekan

Ketika tombol 1 keypad ditekan maka serial monitor akan menampilkan karakter 1 dan pada LCD 1602 akan muncul karakter 1 seperti terlihat pada Gambar 5. Kemudian ketika tombol 2 keypad ditekan maka pada serial monitor akan muncul karakter 2 dan pada LCD muncul karakter 2 seperti pada Gambar 6. Jika hasil percobaan anda telah sesuai seperti pada tutorial ini maka selamat anda telah berhasil menggunakan keypad sebagai masukan dan menampilkan karakter tombol yang anda tekan pada LCD 1602. Anda dapat mencoba untuk menekan tombol keypad yang lain untuk memastikan bahwa karakter yang ditampilkan pada serial monitor maupun LCD 1602 telah sesuai dengan tombol yang anda tekan. Jika karakter yang ditampilkan tidak sesuai dengan tombol yang anda tekan, maka anda perlu periksa program pada baris 8-12. Pastikan sudah sesuai seperti keypad yang anda miliki.

Bagikan ke

Tutorial Keypad 4×4 dan LCD 1602 Menggunakan Arduino Uno

Saat ini belum tersedia komentar.

Silahkan tulis komentar Anda

Tutorial Keypad 4×4 dan LCD 1602 Menggunakan Arduino Uno

Produk yang sangat tepat, pilihan bagus..!

Berhasil ditambahkan ke keranjang belanja
Lanjut Belanja
Checkout
Produk Quick Order

Pemesanan dapat langsung menghubungi kontak dibawah: