keypad-tustakimi

Keypad ismini daha önce duymamış olsanız bile aslında herkesin bildiği elektronik elemanlardan biridir. Aşağıdaki fotoğrafta bir keypad örneği görmektesiniz!

Keypad ayrıca tuş takımı olarak ta bilinmektedir. Elektronik devrelerde Tuş takımlarını kullanarak pek çok işlem yapabiliriz. Burada örnek vermenin anlamsız olduğunu düşünüyorum. Çünkü tuş takımları neredeyse bizden biri haline gelmiş durumdalar. Ama yinede ben bir kaç örnek vereyim! Hesap makinesi,telefon gibi.

Keypad (Tuş Takımları) Çalışma Mantığı

Bu cihazlar tarama yöntemi ile basılan sayıyı tespit ederler. Yani bir nevi hile (hile benim tabirim :)) ile bizim bastığımız tuşu veya butonu tespit ederek çıkış elemanına ilgili numaranın değerini gönderir. Bir Keypad tam olarak şu mantıkla çalışmaktadır;
Satır ve sütun dan oluşarak iki farklı açıdan tarama yaparlar.
Satır kısmında sürekli lojik 1 değeri gönderilirken,
Sütun kısmında ise her bir sütuna tek tek lojik 0 değeri verilir ve keypad üzerinde sürekli tarama yaptırılır.
Eğer bir butona basılır ise bu basılan butonun yer aldığı satır da lojik 0 değerini alır.
Sütun kısmındaki tarama sırasında her iki tarafında lojik 0 değeri aldığı algılandığında keypad ilgili butonun numarasını denetleyiciye iletir.
Not: Bu lojik kısımları ben aşağıdaki örneğe göre açıkladım. Fakat uygulama yapan kişiye göre satır ve sütun kısımlarına verilen lojik 0 veya lojik 1 değerleri tam tersi şekilde programlanır ise de devre çalışır.

C dili ile Yapılmış Keypad (Tuş Takımı) Örneği 1

Bu örnek keypad ile yapılabilecek pek çok uygulamaya yardım edebilecek temel bir uygulama Keypad üzerinde basılan değer ne ise o değeri bir display’e aktarabiliriz.
include
void main()
{
while(1)
    {
    P2_0=0;
    while(!P2_0)           // 1 sutun if'li kısım 1 satır
    {
        if(!P2_3) P3=1;
        if(!P2_4) P3=4;
        if(!P2_5) P3=7; 
        if(!P2_6) P3=0;
    P2_0=1;
    }
    P2_1=0;
    while(!P2_1)          //2 sutun if'li kısım 2 satır
    {
    if(!P2_3) P3=2;
    if(!P2_4) P3=5;
    if(!P2_5) P3=8;
    if(!P2_6) P3=0;
     P2_1=1;
    }
    P2_2=0;  
    while(!P2_2)         // 3 sutun if'li kısım 3 satır
    {
     if(!P2_3) P3=3;
     if(!P2_4) P3=6;
     if(!P2_5) P3=9;
     if(!P2_6) P3=0xFF;
     P2_2=1;
    }
    }
}

C dili ile Yapılmış Keypad (Tuş Takımı) Örneği 2

Bu örnek için kod paylaşımı yapmayacağım çünkü biraz uzun ama bu keypad örneği için bir video hazırladım. Bu video ile uygulamanın çalışma mantığını görebilirsiniz. Ayrıca eğer isterseniz ikinci uygulamanın örnek dosyalarını buradan indirebilirsiniz. Videoyu aşağıda görmektesiniz…

C dili ile Yapılmış Keypad (Tuş Takımı) Örneği 3

Diğer keypad örneği gibi bu örnekte de kod paylaşımı yapmayacağım. Bu uygulamanın da videosunu izleyerek nasıl çalıştığını anlayabilirsiniz. Çalışma dosyalarını buradan indirebilirsiniz…

Umarım bu örnekler ve yukarıdaki anlatım keypad (tuş takımı) ‘in nasıl çalıştığını anlamanıza yardımcı olmuştur. Ayrıca şu konuyu da belirtmek isterim ki 2. ve 3. örnekler uzun kod satırına sahipmiş gibi gözükebilirler fakat aslında mantık aynı ve sadece bir otomatik kayma (kara şimşek olarak bilinir) olduğu için for döngüsü ve gecikme için özel bir layer ataması yapıldı. zaten bu iki kısıma benzer örneği ise diğer yazılarımdan olan Led Uygulaması 1 ve Led Uygulaması 2 de göstermiştim.

Eğer bu uygulamalar kısmında her hangi bir sorun veya hata ile karşılaşır iseniz benimle yorum kısmı ile iletişime geçebilirsiniz.

One Response to C Programlama Dili İle Keypad Uygulamaları

  1. Anum Sheikh diyor ki:

    Bu yorum bir blog yöneticisi tarafından silindi.

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir