Code für Visual Basic Express 2005:
Const COM_PORT As String = "COM9"
Dim PufferString As String
Private Delegate Sub DelegateSub()
Private Datenanzeigen As New DelegateSub(AddressOf Anzeigen)
Private Sub Form1Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) _
Handles MyBase.Load
Dim EinzelPort As String
Debug.WriteLine("INFO: Folgende Ports wurden auf dem System
gefunden:")
For Each EinzelPort In My.Computer.Ports.SerialPortNames
Debug.WriteLine(EinzelPort)
Next EinzelPort
With SerialPort1
If Not .IsOpen Then
Try
'.PortName = COM_PORT
'.BaudRate = 57600
'.DataBits = 8
'.WriteTimeout = 2000 ' 1000
ms = 1 Sek.
'.ReadTimeout = 2000 ' 1000
ms = 1 Sek.
'.Handshake = IO.Ports.Handshake.None
'.ReceivedBytesThreshold = 1
.NewLine = vbCr
.Open()
Debug.WriteLine("Port Open: " & SerialPort1.IsOpen)
Catch ex As Exception
MessageBox.Show(ex.Message, "Fehler beim Open", _
MessageBoxButtons.OK,
MessageBoxIcon.Error)
Exit Sub
End Try
End If
End With
TextBox1.Multiline = True
TextBox1.ScrollBars = ScrollBars.Both
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) _
Handles Button1.Click
Try
PufferString = ""
SerialPort1.WriteLine(TextBox1.Text)
Catch ex As Exception
MessageBox.Show(ex.Message, "Fehler beim Senden ...")
Exit Sub
End Try
Debug.WriteLine("Daten übermittelt!")
TextBox1.Text = ""
End Sub
Private Sub SerialPort1_DataReceived(ByVal sender As Object, _
ByVal e As
System.IO.Ports.SerialDataReceivedEventArgs) _
Handles SerialPort1.DataReceived
'hier
Dim response As String
Try
'TextBox1.Text = TextBox1.Text & SerialPort1.ReadExisting
response = SerialPort1.ReadExisting
Debug.WriteLine(response)
PufferString &= response
If PufferString.EndsWith("]") Then
'event auslösen
End If
Catch ex As Exception
MessageBox.Show(ex.Message, "Fehler beim Empfangen ...")
End Try
End Sub
Private Sub Anzeigen()
Label1.Text = PufferString
End Sub
Private Sub Form1_FormClosing(ByVal sender As Object, _
ByVal e As
System.Windows.Forms.FormClosingEventArgs) _
Handles Me.FormClosing
If SerialPort1.IsOpen Then SerialPort1.Close() ' Port wieder
Schließen
Debug.WriteLine("Port Open: " & SerialPort1.IsOpen)
End Sub
Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button2.Click
Anzeigen()
End Sub
Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles Button3.Click
Try
PufferString = ""
SerialPort1.WriteLine("XGO")
Catch ex As Exception
MessageBox.Show(ex.Message, "Fehler beim Senden ...")
Exit Sub
End Try
Debug.WriteLine("Daten übermittelt!")
TextBox1.Text = ""
End Sub
..und die Eigenschaften:
unter serial_port :
-DtrEnable auf "True"
-RtsEnable auf "True"
Gruß Moritz
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.