30 Kasım 2014 Pazar

Seri Haberleşme

Arduino İle Seri Haberleşme

Mikrodenetleyiciler, diğer mikrodenetleyicilerle, bilgisayar ile ve cihazlar ile iletişim kurabilir. İletişim seri ve paralel olarak 2’ye ayrılır.Paralel iletişimde 8 bitlik veriler 8 kablo aracılığı ile iletilir.Seri iletişimde veriler 2 kablo aracılığı ile ietilir.Doğal olarak paralel iletişim hızlıdır ancak uzun mesafelerde aşırı kablo kullanımına neden olur.O yüzden seri iletişim tercih edilir. Haberleşme ayrıca kablolu ve kablosuz olarak ikiye ayırılır. Kablosuz haberleşmeye örnek olarak, bluetooth, kızılötesi, wifii örnekleri verilebilir. Arduino Uno üzerinde 1 adet seri haberleşme alıcı-verici çifti bulunmaktadır. Arduino unonun 0. pini alıcı-receiver(RX) 1. pini verici-transmitter (TX) olduğunu kartınıza bakarak rahatlıkla görebilirsiniz. Seri haberleşme üzerinden veriler 0 ve 1 dizileri olarak iletilirler, arduino’yu kullanarak seri haberleşme ile 13. pindeki ledi kontrol edeceğiz.

Arduino ile Seri haberleşme Üzerinden Led Kontrolü

Arduino’nun seri haberleşme için hazırlanmış arayüzünü kullanım 1 gönderdiğimizde 13. pindeki led’ini yanmasını diğer tuşlara basıldığında ledin sönmesini sağlayacağız.

Arduino ile Seri haberleşme Üzerinden Led Kontrolü Devresi

Arduino üzerindeki ledi kullanacağımız için herhangi bir bağlantı yapmamıza gerek yoktur. Çıktı olarak ise arduino serial monitörü kullanacağız.

screen

Arduino ile Seri haberleşme Üzerinden Led Kontrolü Akış Diagramı

ser

Arduino ile Seri haberleşme Üzerinden Led Kontrolü Kodu

#define LED 13                           // Ledin pini
  void setup() {     Serial.begin(9600); // Seri haberleşme başlangıç ayarı-baudrate  
Serial.println("Seri haberlesme baslatildi"); // Ekrana bilgi gönderiliyor   
pinMode(LED,OUTPUT); // Led Output  
digitalWrite(LED,LOW); 
} 
void loop() {    
 while(Serial.available()>0) // Seri haberleşme gerçekleşiyor mu?  
   {     
Serial.println("\nVeri alindi");  // Veri alındığına dair bilgi ekrana yazılıyor        
           if(Serial.read()=='1'){ // Eğer veri 1 ise     
             digitalWrite(LED,HIGH); // Ledi yak      
             Serial.println("Gelen veri 1 Led yandi");   
                                 }   
                    else {   
                      digitalWrite(LED,LOW); // Eğer 1'den farklı ise Ledi Söndür     
                       Serial.println("Gelen veri 1'den farkli Led sondu");       
                        }  
     }
  }





Hiç yorum yok:

Yorum Gönder