Merhaba Arkadaşlar ;
iki bilgisayar var ve bu bilgisayarlar RS232 yani seri portdan birbirine bağlı , RX , TX ve ground uçları bağlı sadece...
1. bilgisayar x bir veri yollucak yollanan veriyi 2. bilgisayar yakalıcak ve ekranda göstericek...
çok küçük bir program. okulda hoca istedi. apro nun comport bileşeni ile bunu yapabilecegim kanısındayım. fakat yapamadım.
bu konuda bana yardımcı olursanız çok sewinirim....
Not : Examples klasorunda buna ilişkin örnek yok. ve apro ile yapmam şart degil başka bir yol önerirseniz o yoldan da gidebilirim...
Kolay Gelsin....
Turbo Power Apro ,, Comport Control
Forum kuralları
Forum kurallarını okuyup, uyunuz!
Forum kurallarını okuyup, uyunuz!
Arkadaşlar peki şöyle bir kod şimdilik işimi görrü gibi ama ;
2 makinede deneme fırsatım olmadı...
bende 1 adet external modem var. seri portdan çalışıyor.
o modeme örnegin 'hüsnü' değerini gönderdiğimde tekrar Hüsnü değerini geri döndürüyor. acaba iki makinedede aynı şeyi yaparmı.. ?
düşüncelerinizi bekliyorum....
kullandıgım kodu aşağıya yazdım....
Düşünceleriniz için şimdiden teşekkürler...
Kolay Gelsin...
2 makinede deneme fırsatım olmadı...
bende 1 adet external modem var. seri portdan çalışıyor.
o modeme örnegin 'hüsnü' değerini gönderdiğimde tekrar Hüsnü değerini geri döndürüyor. acaba iki makinedede aynı şeyi yaparmı.. ?
düşüncelerinizi bekliyorum....
kullandıgım kodu aşağıya yazdım....
Kod: Tümünü seç
procedure TForm1.TestClick(Sender: TObject);
{TestClick button click - Send output}
begin
ApdComPort1.OutPut := 'Hüsnü'^M; // porta deger gönder !
end;
// bilgi geri döndüğünde comport bileşeninin trigger ı tetikleniyor ve aşağıdaki kodlar devreye giriyor sanırım...
procedure TForm1.ApdComPort1TriggerAvail(CP: TObject; Count: Word);
{Event OnTriggerAvail - Example how OnTriggerAvail works}
var
I : Word;
C : Char;
S : String;
begin
S := '';
for I := 1 to Count do begin // Yakalanan verinin tamamını arka arkaya ekliyor ...
C := ApdComPort1.GetChar;
case C of
#0..#31 : {ekrana bunlar gelmesin} ;
else S := S + C;
end;
end;
ShowMessage('Comport a geri dönen bilgi... : ' + S);
end;
Kolay Gelsin...
yapabilirsin
yazdıgın uygulamaya bir edit bir memo ve bir buton koy
butona
ApdComPort1.OutPut := Edit1.Text; falan yaz
ApdComPort1 in OnTriggerAvail olayına
dikkat ettiysen senin yazdıgın kodları kullandım
bir seri cross kablo ile iki pc yi birlestir
ve programı ikisinde de calıstır (mesela herikisininde Com1 ini kullanabilirsin)
yazdıgın uygulamaya bir edit bir memo ve bir buton koy
butona
ApdComPort1.OutPut := Edit1.Text; falan yaz
ApdComPort1 in OnTriggerAvail olayına
Kod: Tümünü seç
procedure TForm1.ApdComPort1TriggerAvail(CP: TObject; Count: Word);
{Event OnTriggerAvail - Example how OnTriggerAvail works}
var
I : Word;
C : Char;
S : String;
begin
S := '';
for I := 1 to Count do begin // Yakalanan verinin tamamını arka arkaya ekliyor ...
C := ApdComPort1.GetChar;
case C of
#0..#31 : {ekrana bunlar gelmesin} ;
else S := S + C;
end;
end;
Memo1.Lines.Add(S);
end;
bir seri cross kablo ile iki pc yi birlestir
ve programı ikisinde de calıstır (mesela herikisininde Com1 ini kullanabilirsin)
ÜŞENME,ERTELEME,VAZGEÇME
ilk bahsettiğin gönderdiğin verinin modemden gelmedi yanlış bir olay echo etkisi var. onu boşver. denemek için bilgisayarında iki tane seri port vardır nasıl olsa. onları tx-rx , rx-tx olacak şekilde bağla iki programınıda çalıştır.
dikkat edeceğin husus. port ayarlarında biri bir biri 2 olacak. oakadar. iki bilgisayara gerek yok,bu şekilde test edebilirsin.
dikkat edeceğin husus. port ayarlarında biri bir biri 2 olacak. oakadar. iki bilgisayara gerek yok,bu şekilde test edebilirsin.
Merhabalar,
Null modem bir kablo hazırlayıp rx, tx uçlarını kısa devre yapın böylece yaptığınız programı tek bir makinada kontrol edebilirsiniz.
Bu şekilde gönderdiğiniz veri tekrar kendi makinanıza geleceği için deneme çalışmalarında kolaylık olur.
Ayrıca daha önce buna benzer bir programın kaynak kodunu siteye göndermiştim (bahsettiğiniz bileşenlerle yazdığım). Yine null modem kabloyla iki makinayı birbirine bağlayın tabii bu kez rx tx kısa devre olmayacak. Bu programı forumdan indirirseniz stringleri karşılıklı gönderebilirsiniz. Size bir fikir verebilir.
Null modem bir kablo hazırlayıp rx, tx uçlarını kısa devre yapın böylece yaptığınız programı tek bir makinada kontrol edebilirsiniz.
Bu şekilde gönderdiğiniz veri tekrar kendi makinanıza geleceği için deneme çalışmalarında kolaylık olur.
Ayrıca daha önce buna benzer bir programın kaynak kodunu siteye göndermiştim (bahsettiğiniz bileşenlerle yazdığım). Yine null modem kabloyla iki makinayı birbirine bağlayın tabii bu kez rx tx kısa devre olmayacak. Bu programı forumdan indirirseniz stringleri karşılıklı gönderebilirsiniz. Size bir fikir verebilir.
saygılar