comport iletişim sorunu

Delphi'de kod yazma ile ilgili sorularınızı bu foruma yazabilirsiniz.
Cevapla
zalimsevki
Üye
Mesajlar: 38
Kayıt: 02 Ara 2005 07:36
Konum: Denizli

comport iletişim sorunu

Mesaj gönderen zalimsevki »

forumdaki comport ile ilgili tüm bilgileri okudum ..
Üzerinde çalıştığım bi hemogram cihazı var .. Abacus/Arcus Serial Communication Protokol kullanıyor cihazın elimde dökümantosyonu mevcut .. Dökümentasyon bilgilerine göre Cport ile bağlantıyı sağladım .. Cihazdan Communication protokol versiyon değişikliğini yaptığımda gerek comport terminalinden gerekse hyperterminalden cihazdın gönderidiği verileri görebiliyorum .. Bundan sonra haberleşme için <ENQ> gönderip cevap olarak <ACK> almam gerekiyor .. Cportun OnRxChar olayı tetiklenmiyor WriteStr ile gönderdiğim komutlara tepki vermiyor .. Kabloda yapmam gereken bi şeyler varmı acaba .. aklıma gelen tüm yöntemleri denedim .. Tüm ayarları dökümantasyona göre yaptığımı belirtmeliyim .. Yardımcı olursanız sevinirirm .. Tüm forum camiasına selamlar ..
mkysoft
Kıdemli Üye
Mesajlar: 3110
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Mesaj gönderen mkysoft »

şimdi aklıma iğnelerin adı gelmedi ama veri gönderme ile veri alma kontrolu pinlerini kısa devre etmen işine yarayabilir (cihaz tarafı için) DTX,DRX olabilir adları.
Kullanıcı avatarı
rsimsek
Admin
Mesajlar: 4482
Kayıt: 10 Haz 2003 01:48
Konum: İstanbul

Mesaj gönderen rsimsek »

Baudrate ve ilgili bağlantı ayarlarını sağlıyor musun? Gerçi HyperTerminal le bilgi alışı yapıyorsa oradaki ayarları kullanabilirsin :wink:
Bilgiyi paylaşarak artıralım! Hayatı kolaylaştıralım!!
zalimsevki
Üye
Mesajlar: 38
Kayıt: 02 Ara 2005 07:36
Konum: Denizli

kablo sorunu

Mesaj gönderen zalimsevki »

Kablo ile ilgili bi sorun olduğunu düşündükten sonra cihaz ile birlikte bi kablo gelmediği için kablo ile ilgili araştırma yaptım .. önceki kullandığım
kabloda CTS-DSR bağlantısını gösteriyor fakat RLSD bağlantısı yok görünüyordu ..

1 Uç 2.Uç
RxD - TxD
TxD - RxD
CD-DTR - DSR
DSR - DTR-CD
GRN - GRN
RTS - CTS
CTS - RTS

Şeklinde bi kablo hazırladım internette bulduğum dökümalarla ..
RLSD bağlantısıda oluştu bu bağlantı tipinden sonra ..
Ancak hala Comport.WriteStr ile gönderdiğim komutlara bir
yanıt alamıyorum cihazdan .. Baundrate , stopbit , veri akışkanlığı
veri biti tüm ayarlar döküman doğrultusunda doğru olarak yapıldı ..
komut gönderdiktenm sonra OnTxEmpty olayına gelip gelmediğini
kontrol ettim ben komut gönderdikten sonra OnTxEmpty olayı
çağrılıyor .. Üç gündür çok az uyudum ve yorgunum :)
Yardımcı olursanız sevinirim ..
En son zalimsevki tarafından 02 Nis 2006 01:21 tarihinde düzenlendi, toplamda 1 kere düzenlendi.
zalimsevki
Üye
Mesajlar: 38
Kayıt: 02 Ara 2005 07:36
Konum: Denizli

kablo testi

Mesaj gönderen zalimsevki »

Kabloyu sanki karşıda makina varmış gibi ..
2-3 , 4-6 , 8-7 , 1-4 şeklinde kablo ile kısadevre yaptırıp
kontrol ettim .. gönderdiğim mesaj aynen dönüyor ..
Bu Transmit ve Recive nin sağlıklı çalıştığını gösteriyor ..
Ekarte etmediğim tek sorun makinanın com portu oldu ..
zalimsevki
Üye
Mesajlar: 38
Kayıt: 02 Ara 2005 07:36
Konum: Denizli

loopback test

Mesaj gönderen zalimsevki »

Çözemediğim nokta .. Kablolarla loopback test yaptığımda Comport terminalinden gönderdiğim mesajın geri geldiğini görmeme rağmen
OnRxChar yordamına yazdığım olayın tetiklenmemesi .. Ben kendi
kendime burdan düşünüyorum :))
ibrahimcoban
Üye
Mesajlar: 163
Kayıt: 11 Eki 2005 10:44
İletişim:

Mesaj gönderen ibrahimcoban »

Sanırım Cportlib kullanıyorsun;
Events özelliklerinden evRxChar 'ı açtın mı ?

Yine sonuç alamadıysan mscomm32 'yi kullanmanı tavsiye ederim.
Cportlib da thread ları kendin yazman gerekebiliyor.
Ama mscomm32 zaten direkt thread olarak çalışıyor ve olayları daha kolay kontrol edebilirsin.
zalimsevki
Üye
Mesajlar: 38
Kayıt: 02 Ara 2005 07:36
Konum: Denizli

veri gönderimi

Mesaj gönderen zalimsevki »

Bağlantı sorunum çözüldü .. <ENQ> gönderdiğimde artık <ACK> verisini makina döndürüyor bana ..
Makinaya bu komut satırını göndermem gerekiyor ..
<SOH>AI<STX>cIHAZADI<HT>3.08<HT>20010101<HT>032427<ETX>88<EOT>

Şu şekillerde denedim .. Makinadan ceveap alamadım ..

1-^A'AI'^B'cIHAZADI'^9'3.08'^9'20010101'^9'032427'^C'88'^D
2-#1'AI'#2'cIHAZADI'#9'3.08'#9'20010101'#9'032427'#3'88'#4
3- chr(1)+'AI'+chr(2)+'cIHAZADI'+chr(9)+'3.08'+chr(9)+'20010101'+chr(9)+'032427'+chr(3)+'88'+chr(4)

yukarıdaki komut satırının doğru gönderim şekli nasıl acaba ..
Cevapla