● online
- USB To RS485 High Speed Converter RS-485 RS 485 Ad....
- Dimmer SCR 2000W Motor Speed Controller 220V AC PW....
- 5V 700mA (3.5W) Isolated switch Power Supply Modul....
- TANG CRIMPING PRESS SKUN RATCHET YTH SN-48B....
- Motor Servo MG995 TowerPro Metal Gear....
- ADS1115 16 Bit I2C Module ADC 4 channel with Pro G....
- IIC I2C LCD 1602 16x2 2004 20x4 Backpack for LCD A....
- Modul Sensor Tegangan AC Bolak balik 220V Listrik ....
- 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.
Tutorial Keypad 4×4 dan LCD 1602 Menggunakan Arduino Uno
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
- Arduino Uno.
- LCD 1602 I2C.
- Keypad 4×4.
- Jumper Male to Male secukupnya.
- 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.
Tutorial Keypad 4×4 dan LCD 1602 Menggunakan Arduino Uno
Telegram? ya dengan fitur robot chat di telegram kita bisa mengontrol device dengan mudah dan praktis. Misal kita kelupaan... selengkapnya
LED RGB adalah lampu led yang mempunyai 3 warna utama yaitu RED/merah, GREEN/hijau dan BLUE/biru. Namun dengan kombinasi dari... selengkapnya
Sensor suhu lagi? Gpp ya disini kita belajar semua sensor suhu, nah tinggal sensor mana nih yang akan digunakan,... selengkapnya
Sensor cahaya atau LDR (Light Dependent Resistor) adalah salah satu sensor analog yang paling sering digunakan saat belajar Arduino. Sensor... selengkapnya
Sensor suara merupakan sensor yang dapat mengubah besaran suara menjadi besaran listrik dimana nilai diperoleh dari besarnya gelombang suara... selengkapnya
HK1600B merupakan salah satu sensor tekanan yang mudah kita temukan di pasaran, dengan output analog linear dari 0.5V hingga 4.5V,... selengkapnya
Setelah kemarin-kemarin sudah sering membahas board esp8266 dengan jenis NodeMCU. Kali ini kita belajar dengan jenis lain yaitu ESP-01,... selengkapnya
Di dalam dunia elektronika, dikenal dua jenis input dan output (I/O) yaitu, analog dan digital. Untuk yang digital itu gampang... selengkapnya
Jumpa lagi bersama indomaker.com, setelah kemarin kita sudah bisa menampilkan sensor suhu dan kelembaban pada web browser DISINI. Sekarang kita... selengkapnya
Pada artikel sebelumnya kita sudah belajar untuk mendaftar ke thingspeak, jika belum silahkan bisa di lihat DISINI. Oke sip... selengkapnya
1 X LDR Sensor 5mm Cahaya 5528 Light Dependent Resistor LDR
Rp 4.000Case patern: Solid Warna : Merah dan Hijau Current: 10-20 mA Diameter: 3mm
Rp 300Kabel jumper 20 cm merk Dupont untuk Arduino Female to male 1 lembar = 40 kabel
Rp 11.300Menerima jasa cetak PCB FR2 (pertinax) / FR4 (double) single / double layer. Silahkan ke web kalkulator biaya cetak pcb… selengkapnya
Rp 1.000this is another great IIC/I2C/TWI/SPI Serial Interface. As the pin resources of for Arduino controller is limited, your project may… selengkapnya
Rp 12.400Ini yang Seri SN – DS3231 I2C RTC Module khusus DS3231SN – Include Baterai – Module jam digital – Keperluan… selengkapnya
Rp 34.900Mini Solderless Breadboard 400 Tie Points adalah breadboard 400 titik lubang, dengan ukuran yang compact sangat cocok untuk anda yang… selengkapnya
Rp 7.800Fitur: -Dapat mendeteksi api atau panjang gelombang sumber cahaya dalam 760nm ~ 1100nm – Api lebih ringan mendeteksi jarak 80cm… selengkapnya
Rp 9.000Putaran = 180º Specifications • Weight: 55 g • Dimension: 40.7 x 19.7 x 42.9 mm approx. • Stall torque:… selengkapnya
Rp 36.400Kabel Jumper Dupont Pelangi 10 cm.. male to female 1 lembar isi 40 kabel
Rp 9.000

Saat ini belum tersedia komentar.