Katzenauge
Grünschnabel
-----------------------------------------------------------------------------------------------------------------------
Hi Leute,
ich denke ihr könnt mir bestimmt helfen. Folgendes Problem beschäftigt mich:
Ich habe ein Distanzmessgerät welches ständig über die RS232 Schnittstelle Distanzdaten sendet. Über Hyperterminal sehe ich die gesendeten Daten ohne Probleme. Jede Sekunde kommen ca. 10 Messdaten an.
Leider habe ich es mit VB Express nicht hinbekommen diese Daten in eine Textbox oder ähnlichen sichtbar zu machen.
Ich benötige ein Tipp oder ein Code Beispiel das sich ähnlich wie Hyperterminal verhält. Habt ihr da was oder woran könnte es liegen, dass ich die Daten mit VB icht empfangen kann?
Port öffnen ist kein Problem, Funktioniert. Baud,Stop,DataBits ist richtig konfiguriert. 9600,1,8,
Sobald ich versuche zu lesen stürt das Programm ab.
Codeschnipsel:
Code (vb.net):
Hi Leute,
ich denke ihr könnt mir bestimmt helfen. Folgendes Problem beschäftigt mich:
Ich habe ein Distanzmessgerät welches ständig über die RS232 Schnittstelle Distanzdaten sendet. Über Hyperterminal sehe ich die gesendeten Daten ohne Probleme. Jede Sekunde kommen ca. 10 Messdaten an.
Leider habe ich es mit VB Express nicht hinbekommen diese Daten in eine Textbox oder ähnlichen sichtbar zu machen.
Ich benötige ein Tipp oder ein Code Beispiel das sich ähnlich wie Hyperterminal verhält. Habt ihr da was oder woran könnte es liegen, dass ich die Daten mit VB icht empfangen kann?
Port öffnen ist kein Problem, Funktioniert. Baud,Stop,DataBits ist richtig konfiguriert. 9600,1,8,
Sobald ich versuche zu lesen stürt das Programm ab.
Codeschnipsel:
Code (vb.net):
- Dim enc As System.Text.Encoding =New System.Text.ASCIIEncoding()
- With SerialPort1
- Try
- SelectCase EMPFANGEN_VARIANTE
- Case1
- PufferString = .ReadExisting
- Me.Invoke(Datenanzeigen)
- Case2
- For I As Integer=1To .BytesToRead ' Alle Bytes einzeln lesen
- Dim ByteArray() AsByte= {.BaseStream.ReadByte} ' 1 Byte lesen PufferString = enc.GetString(ByteArray) ' Array in String
- Me.Invoke(Datenanzeigen) ' Delegaten aufrufen
- Next
- CaseElse
- MessageBox.Show("Unbekannte Codevariante", "Empfangen ...")
- EndSelect
- Catch ex As Exception
- MessageBox.Show(ex.Message, "Fehler beim Empfangen ...")
- End Try
- EndWith