Tutorial ini akan membahas bagaimana cara menampilkan nilai angka pada keypad dengan menggunakan tampilan serial monitor pada LCD I2C 16×2. Secara umum Keypad 4×4 merupakan komponen yang tersusun dari 4 x 4 atau 16 buah tombol button yang telah dirangkai dengan konfigurasi bentuk matrix sehingga memiliki index sebanyak 4 buah baris dan 4 buah kolom. Proses pembacaan dilakukan secara matriks yaitu dengan menggunakan teknik scanning, dan pada proses tersebut hal yang dilakukan dengan memberikan umpan data pada 1 bagian dan memantau akan adanya feedback /umpan balik pada bagian lainnya.
Menampilkan Nilai Keypad Pada LCD I2C 16×2
1. Skema Rangkaian
Gambar Skematik Rangkaian Keypad Arduino
2. Wiring Koneksi
- Pin 1 dari kanan (keypad) -> Pin D3 Arduino
- Pin 2 dari kanan (keypad)-> Pin D4 Arduino
- Pin 3 dari kanan (keypad)-> Pin D5 Arduino
- Pin 4 dari kanan (keypad)-> Pin D6 Arduino
- Pin 5 dari kanan (keypad)-> Pin D7 Arduino
- Pin 6 dari kanan (keypad)-> Pin D8 Arduino
- Pin 7 dari kanan (keypad)-> Pin D9 Arduino
- Pin 8 dari kanan (keypad)-> Pin D10 Arduino
- Pin SDA (LCD I2C)-> Pin A4(SDA) Arduino
- Pin SCL (LCD I2C)-> Pin A5(SCL) Arduino
- Pin Vcc (LCD I2C)-> Pin 5v Arduino
- Pin Gnd (LCD I2C)-> Pin Gnd Arduino
Baca Juga : Kunci Pintu dengan password input Keypad 4×4
3. Alat / Bahan
- Arduino uno : 1 buah
- Keypad 4×4 : 1 buah
- LCD 16×2 : 1 buah
- Modul I2C LCD : 1 buah
- Kabel jumper : 12 buah
- Papan breadboard: 1 buah (optional)
4. Langkah Kerja
- Siapkan alat dan bahan yang akan digunakan
- Lakukan proses wiring dengan menggunakan Gambar skematik rangkaian diatas
- Buka software Arduino IDE yang telah terinstal pada laptop/komputer
- Unduh dan masukkan file libray keypad.zip dan LiquidCrystal_I2C.zip, dengan cara buka Arduino IDE pilih Sketch->Include Library->Add.Zip Library
- Ketikkan sketch program pada halaman Arduino IDE
- Lakukan proses uploading program
- Amati tampilan pada LCD I2C 16×2
Baca Juga : Running Text LCD 1602 Arduino Uno
5. Sketch Program
/* Program Akses Keypad dengan Tampilan LCD I2C 16x2 */ #include <LiquidCrystal_I2C.h> #include <Keypad.h> LiquidCrystal_I2C lcd(0x27, 16, 2); const byte ROWS = 4; const byte COLS = 4; char hexaKeys[ROWS][COLS] = { {'1', '2', '3', 'A'}, {'4', '5', '6', 'B'}, {'7', '8', '9', 'C'}, {'*', '0', '#', 'D'} }; byte rowPins[ROWS] = {10, 9, 8, 7}; byte colPins[COLS] = {6, 5, 4, 3}; Keypad customKeypad = Keypad(makeKeymap(hexaKeys), rowPins, colPins, ROWS, COLS); void setup(){ lcd.init(); // initialize the lcd lcd.init(); // Print a message to the LCD. lcd.backlight(); lcd.print("Keypad Arduino"); //Display a intro message lcd.setCursor(0, 1); // set the cursor to column 0, line 1 lcd.print("By: Indobot "); //Display a intro message delay(2000); //Wait for display to show info lcd.clear(); //Then clean it } void loop(){ char customKey = customKeypad.getKey(); if (customKey){ lcd.setCursor(0,0); lcd.print("Press: "); lcd.print(customKey); delay(100); } }
Kesimpulan :
Program ini akan menampilkan nilai angka pada LCD I2C 16×2 sesuai dengan input angka yang ditekan pada keypad.