Arduino SerialEvent ile Port Dinleme

Merhaba arkadaşlar bu yazıda Arduino’da SerialEvent ile nasıl port dinlenir bundan bahsedeceğim. Öncelikle nasıl bir durumda kullanma ihtiyacı ortaya çıkıyor bir örnek verelim.  Diyelim ki Bilgisayardan arduino ‘ya veri aktarımı yapıyorsunuz. Bunu loop() içinde de yakalayabilirsiniz ancak güzel bir yöntem değil. SerialEvent dediğimiz metod bir nevi Interrupt gibi çalışıyor . Bildiğiniz gibi arduino’nun RX ve TX pinleri var ki bunlar seri haberleşme için kullanılıyor ve doğrudan usb deki data pinlerine bağlıdır. Buraya bir data geldiğinde otomatik olarak SerialEvent metodu tetiklenir. Dileyim bir flag yapısı kullanarak verinin sonunu tespit ediyorsunuz yada “\n” karakterine göre verinin sonunu tespit ediyorsunuz. Bu durumda bu event’in içinde verinizin tümünü alıp , yine verilerin tamamlandığını belirten bir flag ile işleme sokmak için loop içerisine yollayabilirsiniz. Şimdi  örneği inceleyelim.

SerialEvent metodu RX pinine  her yeni data geldiğinde tetiklenir. Bu rutin bir işlem olarak tekrarlanır . eğer loop içinde delay kullanırsanız senkronizasyon da gecikme yaşanabilir . 

 

Örnek Kaynağı : https://www.arduino.cc/en/Tutorial/SerialEvent

2 Comments

Add a Comment

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