2. Gambar Rangkaian Simulasi [kembali]
3. Video Simulasi [kembali]
4. Prinsip Kerja [kembali]
a. Hubungkan Komponen Arduino ke Keypad. Kaki 14 ke keypad baris 1, kaki 15 ke keypad baris 2, kaki 16 ke keypad baris ke 3. Keypad kolom 1 ke kaki 17, keypad kolom 2 ke baris 18, keypad kolom 3 ke kaki 19, keypad 4 ke kaki 20.
b. Hubungkan komponen Arduino ke seven segmen. kaki arduino 2 dihubungkan ke kaki seven segmen kaki A, 3 ke B, 4 ke C, 5 ke D, 6 ke E, 7 ke F, 8 ke G, 9 ke DP. Kaki seven segmen 4 ke arduino kaki 10 dan 3 ke 11.
c. Masukkan Coding pada Arduino. Coding ini yang akan menentukan nilai saat angka pada keypad di tekan.
d. Karena di perintah untuk menghasilkan 2 angka, maka akan ditambahkan koding pada { for (int i=0;i<8;i++){
pinMode(pin[i],OUTPUT);} , dengan menambahkan pinMode(11,OUTPUT); dan digitalWrite(11,LOW); yang mana kaki seven segmen 3 terhubung ke 11, maka di masukkan 11.
setelah di tekan angka 9, maka akan muncul angka 99.
5. Flowchart [kembali]
6. Listing Program [kembali]
#include <Keypad.h>
char tombol[4][3] =
{
{'1', '2', '3'},
{'4', '5', '6'}, //inisiasi untuk keypad matriks 4x3
{'7', '8', '9'},
{'*', '0', '#'}
};
byte pin[] = {2, 3, 4, 5, 6, 7, 8, 9}; //inisiasi pin 7 segment di arduino
byte pinBaris[] = {17, 18, 19, 20}; //inisiasi pin keypad di arduino
byte pinKolom[] = {14, 15, 16}; //inisiasi pin keypad di arduino
Keypad keypad = Keypad(makeKeymap(tombol),
pinBaris, pinKolom, 4, 3); //inisiasi keypad dari library
void setup()
{ for (int i=0;i<8;i++){
pinMode(pin[i],OUTPUT);}
pinMode(10,OUTPUT); //inisiasi pin 10 sebagai OUTPUT di arduino
pinMode(11,OUTPUT);
digitalWrite(10,LOW); //inisiasi pembacaan awal 0 atau RENDAH
digitalWrite(11,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,HIGH); //pin 2 menuju a bernilai 1
digitalWrite(3,HIGH); //pin 3 menuju b bernilai 1
digitalWrite(4,HIGH); //pin 4 menuju c bernilai 1
digitalWrite(5,HIGH); //pin 5 menuju d bernilai 1
digitalWrite(6,HIGH); //pin 6 menuju e bernilai 1
digitalWrite(7,HIGH); //pin 7 menuju f bernilai 1
digitalWrite(8,LOW); //pin 8 menuju g bernilai 0
digitalWrite(9,LOW); //pin 9 menuju dp bernilai 0
}
else if(kode == '1') //kondisi awal jika tombol 1 ditekan
{ digitalWrite(2,LOW);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(8,LOW);
digitalWrite(9,LOW);
}
else if(kode == '2') //kondisi awal jika tombol 2 ditekan
{ digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,LOW);
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
}
else if(kode == '3') //kondisi awal jika tombol 3 ditekan
{ digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
}
else if(kode == '4') //kondisi awal jika tombol 4 ditekan
{ digitalWrite(2,LOW);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
}
else if(kode == '5') //kondisi awal jika tombol 5 ditekan
{ digitalWrite(2,HIGH);
digitalWrite(3,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
}
else if(kode == '6') //kondisi awal jika tombol 6 ditekan
{ digitalWrite(2,HIGH);
digitalWrite(3,LOW);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
}
else if(kode == '7') //kondisi awal jika tombol 7 ditekan
{ digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,LOW);
digitalWrite(7,LOW);
digitalWrite(8,LOW);
digitalWrite(9,LOW);
}
else if(kode == '8') //kondisi awal jika tombol 8 ditekan
{ digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
}
else if(kode == '9') //kondisi awal jika tombol 9 ditekan
{ digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,HIGH);
digitalWrite(6,LOW);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
}
else if(kode == '*') //kondisi awal jika tombol * ditekan
{ digitalWrite(2,HIGH);
digitalWrite(3,LOW);
digitalWrite(4,LOW);
digitalWrite(5,HIGH);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
}
else if(kode == '#') //kondisi awal jika tombol # ditekan
{ digitalWrite(2,HIGH);
digitalWrite(3,HIGH);
digitalWrite(4,HIGH);
digitalWrite(5,LOW);
digitalWrite(6,HIGH);
digitalWrite(7,HIGH);
digitalWrite(8,HIGH);
digitalWrite(9,LOW);
}
}
7. Link Download [kembali]
Simulasi Proteus (download)
Listing Program (download)
Video (download)
Tidak ada komentar:
Posting Komentar