Mengakses Keypad pada Arduino

APA ITU KEYPAD?
Keypad yaitu kumpulan dari tombol atau push button yang tersusun atau biasa disebut "PAD". Keypad adalah sebuah papan yang setiap tombolnya diberikan suatu karakter, dengan kata lain jika kita menekan tombol pada keypad akan muncul karakter yang telah diberikan dengan menggunakan konfigurasi kolom dan baris. Konfigurasi matriks digunakan untuk mengefektifkan kumpulan tombol atau push button.



Komponen yang digunakan dalam perancangan berbasis arduino sebagai berikut :
1. Arduino Uno
2. Keypad 4x4
3. LCD 16x2
4. Potensiometer

Contoh Diagram Alir


Rangkain Skematik


Program Pada Arduino

#include <LiquidCrystal.h>
const int A=0;
const int B=1;
const int C=2;
const int D=3;
const int x1=13;
const int x2=8;
const int x3=5;
const int x4=4;
LiquidCrystal lcd(6, 7, 9, 10, 11, 12);
int hitung =0;
  
void setup()
{
  pinMode(x1,OUTPUT);
  pinMode(x2,OUTPUT);
  pinMode(x3,OUTPUT);
  pinMode(x4,OUTPUT);
  digitalWrite(x1, HIGH);
  digitalWrite(x2, HIGH);
  digitalWrite(x3, HIGH);
  digitalWrite(x4, HIGH);
  pinMode(A,INPUT_PULLUP);
  pinMode(B,INPUT_PULLUP);
  pinMode(C,INPUT_PULLUP);
  pinMode(D,INPUT_PULLUP);
  lcd.begin(16,2);
  lcd.setCursor(0,0);
  lcd.print("KARAKTER KEYPAD");
}

void loop()
{
  digitalWrite(x1, LOW);
  if (digitalRead(A)== LOW){
    lcd.setCursor(0,1); lcd.print("       A        ");}
  if (digitalRead(B)== LOW){
    lcd.setCursor(0,1); lcd.print("       3        ");}
  if (digitalRead(C)== LOW){
    lcd.setCursor(0,1); lcd.print("       2        ");}
  if (digitalRead(D)== LOW){
    lcd.setCursor(0,1); lcd.print("       1        ");}
  
  digitalWrite(x1, HIGH);
  digitalWrite(x2, LOW);
  if (digitalRead(A)== LOW){
    lcd.setCursor(0,1); lcd.print("       B        ");}
  if (digitalRead(B)== LOW){
    lcd.setCursor(0,1); lcd.print("       6        ");}
  if (digitalRead(C)== LOW){
    lcd.setCursor(0,1); lcd.print("       5        ");}
  if (digitalRead(D)== LOW){
    lcd.setCursor(0,1); lcd.print("       4        ");}
  
  digitalWrite(x2, HIGH);
  digitalWrite(x3, LOW);
  if (digitalRead(A)== LOW){
    lcd.setCursor(0,1); lcd.print("       C        ");}
  if (digitalRead(B)== LOW){
    lcd.setCursor(0,1); lcd.print("       9        ");}
  if (digitalRead(C)== LOW){
    lcd.setCursor(0,1); lcd.print("       8        ");}
  if (digitalRead(D)== LOW){
    lcd.setCursor(0,1); lcd.print("       7        ");}
  
  digitalWrite(x3, HIGH);
  digitalWrite(x4, LOW);
  if (digitalRead(A)== LOW){
    lcd.setCursor(0,1); lcd.print("       D        ");}
  if (digitalRead(B)== LOW){
    lcd.setCursor(0,1); lcd.print("       #        ");}
  if (digitalRead(C)== LOW){
    lcd.setCursor(0,1); lcd.print("       0        ");}
  if (digitalRead(D)== LOW){
    lcd.setCursor(0,1); lcd.print("       *        ");}
  digitalWrite(x4, HIGH);
}

Komentar

Postingan Populer