● online
- Motor servo MG996R TowerPro Metal Gear....
- Kabel Jumper 10cm Dupont Pelangi 10 cm Male to Mal....
- WEMOS D1 MINI PRO BOARD IoT ESP8266 WIFI PAKET LEN....
- Dual Volt Amp Meter Digital Ampere Meter Voltmeter....
- 5V 700mA (3.5W) Isolated switch Power Supply Modul....
- Raspberry Pi 4 Model B 4GB Original UK E14 Raspi 4....
- Dimmer SCR 2000W Motor Speed Controller 220V AC PW....
- ESP32 ESP-32 Wireless Module ESP32-S ESP-WROOM-32 ....
- 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
Sensor suhu lagi? Gpp ya disini kita belajar semua sensor suhu, nah tinggal sensor mana nih yang akan digunakan,... selengkapnya
Real Time Clock DS3231 adalah rangkaian elektronik yang berfungsi untuk menyediakan data waktu dan tanggal dengan tingkat presisi... selengkapnya
Pulse sensor merupakan sensor yang berfungsi untuk mengukur banyaknya detak jantung dengan satuan menit atau BPM (Beats Per Minutes). Pada... selengkapnya
Artikel kali ini, akan membahas tentang mengontrol sebuah LED menggunakan remote. Remote apa yang digunakan? anda dapat menggunakan berbagai... selengkapnya
Selamat datang di indomaker.com, pada pembahasan kali ini admin akan mengupas tentang penggunaan ESP32-CAM. Module ini merupakan sebuah module... selengkapnya
Semangat pagi, kali ini kita akan belajar untuk mengontrol LED melalui wifi menggunakan NodeMCU. Mengapa LED? nggak langsung ke... selengkapnya
Pernah suatu ketika axis X, Y, atau z CNC kita berubah, gcode yang sudah jadi setelah di running tidak... selengkapnya
Kali ini kita akan mencoba menggunakan sensor DHT11 pada ESP32. Seperti yang kita ketahui sensor DHT11 ini berfungsi untuk... selengkapnya
Sensor Inframerah atau infrared (IR) adalah sensor yang dapat mendeteksi hambatan menggunakan cahaya inframerah yang dipantulkan. Sensor ini memiliki... selengkapnya
Water level merupakan sensor yang berfungsi untuk mendeteksi ketinggian air dengan output analog kemudian diolah menggunakan mikrokontroler. Cara kerja... selengkapnya
Deskripsi Produk “LED Dot Matrix Display dengan 32×8 pixel, berwarna Merah, menggunakan IC MAX7219 sebagai driver dan dapat dikoneksikan ke… selengkapnya
Rp 47.500Description: TP5100 is a double switch buck 8.4V, single cell 4. 2V lithium battery charge management chip. Its ultra-compact QFN16… selengkapnya
Rp 10.600Compatibility: USB v2.0 standard Interface: Network: USB Series: RS-485 Port: an independent RS-485 Connector: Network: USB type A connector Series:… selengkapnya
Rp 38.800Mini Solderless Breadboard 400 Tie Points adalah breadboard 400 titik lubang, dengan ukuran yang compact sangat cocok untuk anda yang… selengkapnya
Rp 7.800MERK : TOWER PRO MG995 180 derajat Specifications Weight: 55 g Dimension: 40.7 x 19.7 x 42.9 mm approx. Stall… selengkapnya
Rp 36.300sg90 towerpro penggerak pada robot-robot kecil, dan bisa digunakan sebagai alat untuk hobi membuat robot dsb, dengan berat sekitar 9g… selengkapnya
Rp 15.500Fitur: -Dapat mendeteksi api atau panjang gelombang sumber cahaya dalam 760nm ~ 1100nm – Api lebih ringan mendeteksi jarak 80cm… selengkapnya
Rp 9.000Kabel Jumper Dupont Pelangi 10 cm.. male to female 1 lembar isi 40 kabel
Rp 9.000Putaran = 180º Specifications • Weight: 55 g • Dimension: 40.7 x 19.7 x 42.9 mm approx. • Stall torque:… selengkapnya
Rp 36.400Dual Volt Amp Meter Digital Ampere Meter Voltmeter 10A 0-100V Ammeter Dilengkapi dengan pengukuran Voltmeter dan Amperemeter dalam 1 display… selengkapnya
Rp 26.500
Saat ini belum tersedia komentar.