Devre:
Tuş
takımının arduinoya bağlantısı yukarıdaki gibidir.
Ben
uygulamamda bu tuş takımını kullandım. Tuş takımının üzerinde 8 adet pin
bulunmaktadır. Bunlardan soldan sağa ilk 4 tanesi satır pinleridir, diğer 4
tanesi sütun pinleridir.
Kodlar:
Kod kısmına gelirsek, işimizi kolaylaştıracak keypad kütüphanesi bulunmaktadır, biz de uygulamada bu kütüphaneyi kullandık.
Keypad kütüphanesini kullanırken öncelikle, keypad nesnemizi oluşturmaktayız.
Keypad tusTakimi= Keypad(makeKeymap(tuslar), satirPinleri, sutunPinleri, satirSayisi, sutunSayisi);
Keypad nesnesini oluştururken tuş takımındaki tuşları, satır-sütun pinlerini arduinonun hangi pinlerine takacağımızı ve tuş takımında satır ve sütunda bulunan tuş sayısını belirtmekteyiz.
Hangi tuşa bastığımızı ise keypad kütüphanesinin getKey() fonksiyonuyla öğrenmekteyiz. Kullanımı aşağıdaki gibidir:
tusTakimi.getKey();
Uygulamada kullandığım arduino kodu:
Kodlar:
Kod kısmına gelirsek, işimizi kolaylaştıracak keypad kütüphanesi bulunmaktadır, biz de uygulamada bu kütüphaneyi kullandık.
Keypad kütüphanesini kullanırken öncelikle, keypad nesnemizi oluşturmaktayız.
Keypad tusTakimi= Keypad(makeKeymap(tuslar), satirPinleri, sutunPinleri, satirSayisi, sutunSayisi);
Keypad nesnesini oluştururken tuş takımındaki tuşları, satır-sütun pinlerini arduinonun hangi pinlerine takacağımızı ve tuş takımında satır ve sütunda bulunan tuş sayısını belirtmekteyiz.
Hangi tuşa bastığımızı ise keypad kütüphanesinin getKey() fonksiyonuyla öğrenmekteyiz. Kullanımı aşağıdaki gibidir:
tusTakimi.getKey();
Uygulamada kullandığım arduino kodu:
#include <Keypad.h>
const byte satirSayisi= 4;
const byte sutunSayisi= 4;
char tuslar[satirSayisi][sutunSayisi]=
{
{'1', '2', '3', 'A'},
{'4', '5', '6', 'B'},
{'7', '8', '9', 'C'},
{'*', '0', '#', 'D'}
};
byte satirPinleri[satirSayisi] = {9,8,7,6};
byte sutunPinleri[sutunSayisi]= {5,4,3,2};
Keypad tusTakimi= Keypad(makeKeymap(tuslar),
satirPinleri, sutunPinleri, satirSayisi, sutunSayisi);
void setup(){
Serial.begin(9600);
}
void loop(){
char
basilanTus = tusTakimi.getKey();
if
(basilanTus != NO_KEY){
Serial.print(basilanTus);
}
}
Hiç yorum yok:
Yorum Gönder