● online
- Jasa Cetak PCB....
- Motor Servo MG995 TowerPro Metal Gear....
- Temperature and Humidity Transmitter Modbus SHT20 ....
- WEMOS D1 MINI PRO BOARD IoT ESP8266 WIFI PAKET LEN....
- Arduino Uno R3 Compatible ATmega328P DIP....
- 10mm Kapton Tape Polymide Film Gold High Temp isol....
- Kapton Tape Polymide Film 20mm Polimida 20 mm Isol....
- Arduino Mega 2560 R3 - ATMEGA2560 Clone - CH340....
- 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
Limit switch merupakan sebuah saklar yang memiliki tuas sebagai penghubung ataupun pemutus arus litrik. Prinsip kerjanya sama seperti push... selengkapnya
Rain sensor merupakan sensor yang berfungsi untuk mendeteksi hujan turun atau tidak. Intinya sensor ini jika terkena air pada... selengkapnya
Pada artikel ini akan membahas bagaimana cara menangani motor stepper dan uln2003 tentunya masih menggunakan Arduino sebagai kontrolernya. Stepper... selengkapnya
Flame sensor sangat sensitif terhadap nyala api (cahaya) dan radiasi di sekitarnya. Sensor ini dapat mendeteksi sumber cahaya biasa... selengkapnya
DHT11 adalah perangkat elektronik yang digunakan untuk mendeteksi kelembapan dan suhu udara. Sensor ini dapat digunakan untuk mendeteksi suhu... selengkapnya
Detektor arus AC adalah perangkat elektronika yang digunakan untuk mendeteksi ada atau tidaknya arus listrik AC pada suatu rangkaian.... selengkapnya
Flow meter yaitu sebuah sensor yang berfungsi untuk menghitung aliran air (debit) dan volume air dalam suatu alur dan... selengkapnya
Panel P10 LED Matrix merupakan sebuah display berisi kumpulan led-led yang disusun secara matrix. Fungsinya untuk menampilkan informasi berupa... selengkapnya
Blynk merupakan sebuah platform aplikasi android yang diperuntukan untuk berbagai kontroler hardware seperti arduino, esp8266, raspberry dsb untuk mengendalikan,... selengkapnya
Mari kita belajar lagi, kali ini membahas sensor LDR. Dimana sensor ini nilainya akan berubah menyesuaikan cahaya yang diterima... selengkapnya
Spesifikasi: 1. 14 digital input / output ports RX, TX, D2 ~ D13, 2. 8 analog input ports A0 ~… selengkapnya
Rp 82.500TECHNICAL SPECIFICATIONS: – Broadcom BCM2711, Quad core Cortex-A72 (ARM v8) 64-bit SoC @ 1.5GHz – 2GB LPDDR4-2400 SDRAM – 2.4… selengkapnya
Rp 1.200.000Kabel jumper Dupont untuk jumper Arduino atau Raspeberry Pi 20 cm Female to female 1 lembar = 40 kabel
Rp 11.300Kabel Jumper Dupont Pelangi 30cm female to Female 1 lembar = 40 kabel
Rp 13.500Micro SD Card Shield For WeMos D1 Mini TF WiFi ESP8266 Compatible SD Wireless Module For Arduino For WeMos D1… selengkapnya
Rp 8.900Ini yang Seri SN – DS3231 I2C RTC Module khusus DS3231SN – Include Baterai – Module jam digital – Keperluan… selengkapnya
Rp 34.900This is the new MEGA2560 R3. In addition to all the features of the previous board, the MEGA now uses… selengkapnya
Rp 299.000Fitur: -Dapat mendeteksi api atau panjang gelombang sumber cahaya dalam 760nm ~ 1100nm – Api lebih ringan mendeteksi jarak 80cm… selengkapnya
Rp 9.000Item Deskripsi : This module performance is stable, measure the distance accurately. performance nearly the same as SRF05, SRF02 SRF05,… selengkapnya
Rp 13.900Microcontroller ATmega2560 chip usb : CH340 Operating Voltage 5V Input Voltage (recommended) 7-12V Input Voltage (limit) 6-20V Digital I/O Pins… selengkapnya
Rp 245.000
Saat ini belum tersedia komentar.