bu nasıl bir seri haberleşme data formatı ?

Katılım
26 Ağu 2008
Mesajlar
124
Puanları
1
Yaş
39
"t2y6o8z1"

adamlar yukarıdaki gibi data gönderen bi sistem yapmışlar. 4800 baud rate (8N1) 8 bit none parity...422/232'den gönderiyorlar bu veriyi. Ancak tüm bunlar, bu veriyi gönderen sistemin kitapçığında yazıyor. Ben bu verinin olduğu rs232 uçunu pc'ye bağlıyorum, hyperterminalde saçma sapan şeyler çıkıyor...

Hyperterminal programı pc'ye gönderilen data ne olursa olsun okuyabiliyor mu? yani gönderilen data formatının ne olduğu önemli mi ?
 
Datanın formatı elbette önemli,

Özellikle haberleşme hızınız, parity, stop biti ayarları da önemli,

Eğer bu konfigürasyonu doğru şekilde oluşturmazsanız datalar düzgün bir şekilde gelmeyebilir. Çünkü bu ayarlar ile siz datanın nerde başlıyacağını nerde biteceğini aradaki bilgileri tanımlamış oluyorsunuz. bunlar düzgün olmadığında saçma gibi gelen datalar görebilirsiniz,
 
evt anlıyorum da, bahsettiğim data formatını hyperterminal sergilemeli diye düşünüyorum
 
Şunu da belirtmek gerekir ki hyper terminal dataları ayıran özel ayraçlar ile bilgileri ayırmaz bunu ancak yazılım ile yapabilirsin,

Hyperda mesela barcode okuyucudan gelen bilgiler her zaman CR ve linefeed olduğu için alt alta düzgün bir şekilde görürsün ancak sana gelen data örneğin "," ayraçı ile geliyorsa hyper bunları ayıramaz ve sürekli uç uca ekler,
 
Protokole dair bir ekran çıktısı var mı? Hyperterminalin ekran görüntüsünü atabilir misin?
Ayrıca o karakterler esasen bilginin kendisi de olabilir örn:

AABB = Asci olarak 65656666 demektir toplarsan bir sayı yapar 65+65+66+66 gibi ya da hex olabilir o zaman da AABB=43707 yapar gibi.

Bu sebeple kendine ait bir haberleşme alt yapısı oluşturduysa çözüm çok uzun sürebilir...
 
Bağlantılarında bir sroun olmadıgından eminmisin? Bence bilgisayarda o formatı mutlaka görmelisin. Ben GPs kullandımn , başka ürünler kullandım hepsinde gözüküyordu o veri..? tr_ercape kardeşimizin dediği gibi bir haberleşme yaptılarsa , kimse kullanmasın diye yapmişlardır. Biliyorum ne kullanmak istedigini baştan beri söylemiyorsun ama insanlar alıp seri portdan kullansın diye birşey yaptılarsa mutlaka char gelmeli diye düşnüüyorum...
 
the_dalga arkadaşımızın bahsettigi her seri portta mutlaka char gelmesi gerektigi konusunda hem haklı hemde biraz muallakta. Çunku kullanılacak olan sistemin yapısına göre egerki bu goruntulenmesi, yada dinlenilmesi istenmeyen bilgiler içeriyorsa elbetteki transmitter kısmında bu bilgi şifrelenecek ve o sekilde seri porttan dısarı gonderilecektir. Bu tip uygulamalarda en iyisi protokolü okumak. Yada belkide uzunca loglar alıp gercekte bunların karsılıgını bulmaya calısmak
 
Eğer port özellikleri aynı ise (baudrate,parity vs) ve kablonuzun bağlantıları doğru ise okumamanız için hiçbir sebeb yok.
 
Merhaba,
ASCII formatında "t harfi =hex'74' tür", decimal "116" dır.datalar hex olarak yollanır fakat PC'de bu datayı 116 olarak görürsünüz.Basit bir yazılım ile gelen datayı "t" olarak görebilirsiniz.Örneğin aşağıdaki basit bir çalışmamda size fikir verecektir.PIC'ten yollanan Hex'31' PC'de dec 49 olarak gelir.VB.net ile yazdığım PC tarafındaki programda eğer 1 geldi ise yeşil olan pencere kırmızıya döner.Kolay gelsin.


Private Sub SerialPort1_DataReceived(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SerialPort1.DataReceived
PictureBox1.BackColor = Color.Olive
Dim gelen As String = SerialPort1.ReadByte '
If gelen = 49 Then
PictureBox1.BackColor = Color.Red
End If
End Sub

https://www.kontrolkalemi.net/drive/s/YHeK2p7mZeB9PejP2LxnwxQX4qOrod
ANTRAK_PIC_to_PC.rar

t2y6o8z1
 

Forum istatistikleri

Konular
127,610
Mesajlar
911,424
Kullanıcılar
449,040
Son üye
Resul yiğit

Çevrimiçi üyeler

Geri
Üst