Keypad nedir?
Keypad satır ve sutunlardan oluşan üzerinde rakam ve harflerin bulunduğu bir çeşit klavyedir. Kullanım amacına göre çeşitli modelleri vardır. 1×4, 2×4, 3×4, 4×4 gibi keypad çeşitleri vardır.
Keypadlar matrix yapıda bağlantıya sahiptir. Fleks kablo yöntemi ile preslenmişlerdir. 1×4 yapıdaki keypad’in 5 adet pini bulunur. 3×4 yapıdaki keypad’in 7 adet bağlantı pini bulunur. 4×4 yapıdaki keypad’in 8 adet bağlantı pini bulunur.
Arduino ile keypad kullanarak bir çok proje yapmak mümkür. Özellikle şifreli kilit, şifreli kasa, şifreli kapı vb. Keypad kullanrak menü özelliği olan projeler, robot kol gibi konum gerektiren işlemlerde keypadlerden yararlanılır.
Keypadlerin arduinoya bağlanabilmesi için doğrudan dijital pinler kullanılır. Kullandığınız keypadin pin sayısı kadar pin kullanılmış olur.
Yukarıda da görüldüğü gibi 1234 nolu pinler Satır pinleri iken 5678 nolu pinler sutun pinleridir. Arduinoya bağladığımızda bunları belirtmemiz gerekir.
Arduino ile keypad kullanırken kütüphaneden faydalanırız. Kütüphaneler işimizi çok kolaylaştırır.
Videoyu izleyerek daha fazla bilgiye ulaşabilirsiniz
Video İzlemek İçin Tıklayınız
//Görsel İşitsel Teknoloji Kanalı
//wwww.teknikerler.com
//Kerim Arı Youtube kanalı butonlar ve buton - kullanımı örnek Kodları
#include <Keypad.h>
const byte satir = 4;
const byte sutun = 4;
char tus_takimi[satir][sutun] = {
{'1', '2', '3', 'A'},
{'4', '5', '6', 'B'},
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}
};
byte satir_pinleri[satir] = {10, 9, 8, 7};
byte sutun_pinleri[sutun] = {6, 5, 4, 3};
Keypad kasa = Keypad(makeKeymap(tus_takimi), satir_pinleri, sutun_pinleri, satir, sutun);
String girilen_sifre="";
String sifre="1234#";
#define kirmizi 12
#define yesil 11
#define mavi 13
#define ses 2
void setup()
{
Serial.begin(9600);
pinMode(kirmizi,OUTPUT);
pinMode(yesil,OUTPUT);
pinMode(mavi,OUTPUT);
pinMode(ses,OUTPUT);
}
void loop()
{
char tus = kasa.getKey();
if (tus != NO_KEY)
{
girilen_sifre = girilen_sifre+tus;
Serial.println(girilen_sifre);
digitalWrite(ses,1);
digitalWrite(mavi,1);
delay(100);
digitalWrite(ses,0);
digitalWrite(mavi,0);
delay(100);
}
if(tus == '#')
{
if(girilen_sifre == sifre)
{
Serial.println("TEBRiKLER DOGRU SiFRE");
digitalWrite(yesil,1);
delay(3000);
digitalWrite(yesil,0);
girilen_sifre="";
}
else
{
Serial.print("YANLIS :");
Serial.println(girilen_sifre);
digitalWrite(ses,1);
digitalWrite(kirmizi,1);
delay(1000);
digitalWrite(ses,0);
digitalWrite(kirmizi,0);
girilen_sifre="";
}
}
}
yukarıdaki kasa yazılımında pin tanıtımında bir hata mı var?
ayrıca şemada roleye giden 13 nolu pim ucu yazılımda hiç belirtilmemiş
şemada roleye 13 pin kumanda ediyor .
halbuki sistemde 13 nolu pin mavi diot a kumanda ediyor.
çizim yazılım ve uygulama uygun değil
Bu uygulamayı çalıştırdığımızda şifre doğru /yanlış komutları çalışıyor ancak röleyi nerden çalıştıracağız??
Yardımınızı beklerim.
Saygılarımla
Belirtilen pin #define ile tanımlanmış durumda. Video içinde detaylı bilgiler mevcut.
Video içerisinde detaylı bilgiler mevcut. Videoyu izleyerek sorularınıza cevap bulabilirsiniz.
Yukarıdaki yazılımı ve şemanızı oluşturdum.
sistem çalışıyor.
benim elimde elektro mıknatıslı bir kilit sistemi var.
Bu durumda ben hangi pinden mıknatısı devreye alabilirim.
Teşekkür ederim
İstediğiniz dijital pinlerden birini kullanabilirsiniz.
Yukarıdaki Code u aynen yazarak uygulamayı çalıştırmıştım.Ancak bilgisayarımı formatladıktan sonra IDE2 kulubünü yaptım. Fakat şimdi programı çalıştırmıyorum devamlı keypad kütüphanesi YÖK gibi bir mesaj alıyorum ne yapmalıyım.Kötü bir talebeyim her halde.
Keypad kütüphanesini yeniden yüklemelisiniz.