● online
- Raspberry Pi Pico Microcontroller Board....
- Dimmer AC 4000W 220 Volt 4000 Watt 220V + Casing A....
- ASIS (Andika Smart IoT Socket)....
- LM2596 Module Step Down DC-DC Ultra compact in 3-4....
- Micro SD MicroSD Card Shield For WeMos D1 Mini TF ....
- Arduino Uno R3 Compatible ATmega328P DIP....
- Kapton Tape Polymide Film 50mm Polimida 50 mm Isol....
- Power Supply 12V Adaptor 220VAC to 12VDC 2A Murni ....
- 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
Mengapa disebut buzzer passive? karena sensor ini tidak mempunyai suara sendiri, melainkan buzzer ini perlu dikontrol dengan kontroler seperti... selengkapnya
Sebagai seorang programmer tentu saja harus mempunyai kemampuan di bidang Bahasa pemograman karena landasan utama dalam membangun sebuah aplikasi... selengkapnya
Sensor PIR berfungsi untuk mendeteksi benda (manusia/hewan) dengan cara mendeteksi energi panas dalam bentuk radiasi inframerah. Jadi sensor ini... selengkapnya
Thingsboard merupakan sebuah platform IoT open-source yang memungkinkan anda untuk mengontrol ataupun memonitoring berbagai perangkat. Penggunaanya mudah, gratis dan... selengkapnya
Flame sensor sangat sensitif terhadap nyala api (cahaya) dan radiasi di sekitarnya. Sensor ini dapat mendeteksi sumber cahaya biasa... selengkapnya
Traffic Light atau lampu lalu lintas adalah lampu yang mampu menertibkan arus lalu lintas jalanan baik kendaraan bermotor, mobil,... selengkapnya
Limit switch merupakan sebuah saklar yang memiliki tuas sebagai penghubung ataupun pemutus arus litrik. Prinsip kerjanya sama seperti push... selengkapnya
Potensiometer merupakan sebuah resistor yang nilainya dapat kita atur sesuai keinginan. Bagaimana cara mengaturnya? nah potensiometer memiliki 3... selengkapnya
Ketemu lagi dengan sensor DS18b20, kali ini akan kita monitoring menggunakan aplikasi Blynk dan ESP-01. Langsung saja ya kita... selengkapnya
Blynk menawarkan beragam fungsi ya, salah satunya untuk mengontrol perangkat. Penggunaan Blynk ini bisa kapan dan dimana saja ya,... selengkapnya
This is a set of transmitter and receiver in one of the photoelectric sensor. Detection distance can be adjusted according… selengkapnya
Rp 37.500Mini Solderless Breadboard 400 Tie Points adalah breadboard 400 titik lubang, dengan ukuran yang compact sangat cocok untuk anda yang… selengkapnya
Rp 7.800Micro SD Card Shield For WeMos D1 Mini TF WiFi ESP8266 Compatible SD Wireless Module For Arduino For WeMos D1… selengkapnya
Rp 8.900Kabel Jumper Dupont Pelangi 30cm female to Female 1 lembar = 40 kabel
Rp 13.500Features: It is of high power density, high efficiency, high-reliability, small size and lightweight. It can isolate unsteady single-way voltage… selengkapnya
Rp 18.500Kinerja Produk: Warnanya coklat (amber), Goldfinger tape sticky baik, patuh, suhu tinggi, pelarut, tidak ada rembesan timah dan tidak ada… selengkapnya
Rp 11.900Arduino Uno adalah board mikrokontroler yang berbasis ATmega328P. Arduino Uno memiliki 14 pin input/output digital (6 di antaranya dapat digunakan… selengkapnya
Rp 144.000Spesifikasi : – 16×2 – Warna Biru – Tegangan kerja : 5v Digunakan untuk keperluan display project seperti Arduino, Raspberry,… selengkapnya
Rp 17.000Support terus UKM indonesia dengan membeli produk-produk dalam negeri. Untuk kualitas tidak usah diragukan, udah kita tes QC dengan sangat… selengkapnya
Rp 8.500Specifications: 1. supports sampling costs (KHz): 8/11.025/12/16/22.05/24/32/44.1/48 2. 24-bit DAC output, dynamic range aid: 90dB, SNR aid: 85dB 3. fully… selengkapnya
Rp 17.800
Saat ini belum tersedia komentar.