[Linux-programlama] FW: Seriporttan veri göndermek ve Almak

---------

[Linux-programlama] FW: Seriporttan veri göndermek ve Almak

From: canibek sağın <csagin_at_gmail.com>
Date: Mon, 5 Jan 2009 09:43:53 +0200
Message-ID: <!&!AAAAAAAAAAAYAAAAAAAAAA4l0LqEdZhAhcH6gvR1G7fCgAAAEAAAANnRKa3RxwNHmH7b9qGDu20BAAAAAA==@gmail.com>

Merhabalar;

Şu an yazmakta olduğum programda seri porttan veri göndermek ve almak
üzerine çalışmaktayım. Linux sistemimde konsolda ,

 

echo "Test" > /dev/ttyS0

 yazdıgımda seriport çıkışında bu stringi görebilmekteyim. Yazdığım
programda open() fonksiyonu ile seri portu açıp write() ile o porta
yazabilmekteyim.

Sorun olarak gördüğüm şey ise veri gelişi düzenli bir aralıkta olmadığı için
yani bazen 1 dakikada bir veri gelirken bazen veri çok yogun bir şekilde
gelebilmekte. Buna çare olarak ise "sigaction" structure i kullanarak,
signal handling işlemi yapmaktı. Anladığım kadarıyla seriporta veri geldiği
anda bir sinyal üretilmekte vebu sinyale göre tanımlı bir fonksiyon
çağırılmaktadır. Ben C++ da bir static fonksiyon tanımladım ve bu fonksiyon
içerisinde static bir degişkenin degerini degiştirerek porttan veri
okutturmak istedim. Fakat bunu LOG lardan da anladığım kadarıyla
başaramadım. Kafama takılan noktalar ise şunlar fcntl() fonksiyonu ile
seriport asenkron olarak tanımlanıyor sanırım. Bu doğru mu? "Sigaction"
kullanımı ile ilgili yardımcı olabilirmisiniz? Maile kendi kodumu ekledim.
Uzman arkadaşlardan tavsiyeler olursa çok sevinirim.

 

Iyi çalışmalar dilerim.

 

Canibek Sağın

_______________________________________________
Linux-programlama mailing list
Linux-programlama_at_liste.linux.org.tr
http://liste.linux.org.tr/mailman/listinfo/linux-programlama

Received on Mon 05 Jan 2009 - 08:41:01 EET

---------

Bu arsiv hypermail 2.2.0 tarafindan uretilmistir.