Menghidupkan 7Segmen dengan Input Keypad



1. Hardware   [Kembali]

Keypad

Seven Segmen

Arduino Uno




3. Flowchart   [Kembali]

4. Listing Program  [Kembali]

#include <Keypad.h> //library
char tombol[4][3] =
{
  {'1', '2', '3'},
  {'4', '5', '6'},     //inisiasi untuk keypad matriks 4x3
  {'7', '8', '9'},
  {'*', '0', '#'}
};
byte pinBaris[] = {28, 30, 32, 34};   //inisiasi pin keypad di arduino
byte pinKolom[] = {22, 24, 26};        //inisiasi pin keypad di arduino
Keypad keypad = Keypad(makeKeymap(tombol),
                       pinBaris, pinKolom, 4, 3); //inisiasi keypad dari library
void setup()
{
  pinMode(2, OUTPUT); //inisiasi pin 10 sebagai OUTPUT di arduino ==> a
  pinMode(10, OUTPUT); //inisiasi pin 10 sebagai OUTPUT di arduino ==> b
  pinMode(4, OUTPUT); //inisiasi pin 10 sebagai OUTPUT di arduino ==> c
  pinMode(5, OUTPUT); //inisiasi pin 10 sebagai OUTPUT di arduino ==> d
  pinMode(6, OUTPUT); //inisiasi pin 10 sebagai OUTPUT di arduino ==> e
  pinMode(7, OUTPUT); //inisiasi pin 10 sebagai OUTPUT di arduino ==> f
  pinMode(8, OUTPUT); //inisiasi pin 10 sebagai OUTPUT di arduino ==> g
  pinMode(9, OUTPUT); //inisiasi pin 10 sebagai OUTPUT di arduino ==> com
  digitalWrite(9, LOW);
}
void loop()
{
  char kode = keypad.getKey(); //membaca keypad
  if (kode == NO_KEY)           //jika tombol tidak di tekan
    return;
  if (kode == '0')             //kondisi awal jika tombol 0 ditekan
  { digitalWrite(2, LOW);     //pin 2 menuju a bernilai 1
    digitalWrite(10, LOW);     //pin 3 menuju b bernilai 1
    digitalWrite(4, LOW);     //pin 4 menuju c bernilai 1
    digitalWrite(5, LOW);     //pin 5 menuju d bernilai 1
    digitalWrite(6, LOW);     //pin 6 menuju e bernilai 1
    digitalWrite(7, LOW);     //pin 7 menuju f bernilai 1
    digitalWrite(8, HIGH);      //pin 8 menuju g bernilai 0
  }
  else if (kode == '1')     //kondisi awal jika tombol 1 ditekan
  { digitalWrite(2, HIGH);
    digitalWrite(10, HIGH);
    digitalWrite(4, HIGH);
    digitalWrite(5, HIGH);
    digitalWrite(6, LOW);
    digitalWrite(7, LOW);
    digitalWrite(8, HIGH);
  }
  
}
a. Multisim / Proteus

Komentar

Postingan populer dari blog ini

Rangkaian Dasar Dot Matrik

OP AMP (PEMBANGKIT SINYAL)

Rangkaian Memori dan Decoder-nya