Reading from a Serial Port output start byte

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • neerajsundriyal
    New Member
    • Nov 2021
    • 1

    Reading from a Serial Port output start byte

    Code:
    Imports System.IO.Ports
    
    Public Class serial_chat
    
        Delegate Sub OutputTextBack(ByVal [text] As String)
    
        Private Sub serial_chat_Load(sender As Object, e As EventArgs) Handles MyBase.Load
            For Each port In IO.Ports.SerialPort.GetPortNames
                ComboBox1.Items.Add(port)
    
            Next
        End Sub
    
        Private Sub Connect_Click(sender As Object, e As EventArgs) Handles Connect.Click
            Try
                If Connect.Text = "Connect" Then
                    SerialPort2.PortName = ComboBox1.SelectedItem.ToString()
                    SerialPort2.Open()
                    GroupBox2.Enabled = True
                    ComboBox1.Enabled = False
                Else
                    SerialPort2.Close()
                    GroupBox2.Enabled = False
                    Connect.Text = "Connect"
    
                End If
            Catch ex As Exception
                MessageBox.Show(ex.Message)
    
            End Try
        End Sub
    
        Private Sub Send_Click(sender As Object, e As EventArgs) Handles Send.Click
            Try
                SerialPort2.Write(TextBox1.Text & vbCr)
                RichTextBox1.Text += "Me : " & TextBox1.Text & vbCr
                TextBox1.Clear()
    
            Catch ex As Exception
                MessageBox.Show(ex.Message)
    
            End Try
        End Sub
    
        Private Sub SerialPort1_DataReceived(sender As Object, e As SerialDataReceivedEventArgs) Handles SerialPort2.DataReceived
           
            Receivedtext(SerialPort2.ReadExisting())
    
        End Sub
        Sub UpdateReceviedText()
    
            Dim bytes As String = SerialPort2.BytesToRead
            Dim buffer As String = SerialPort2.BytesToRead
                buffer = SerialPort2.ReadExisting()
                bytes = SerialPort2.ReadExisting()
    
            If Mid(bytes, 1, buffer) = " me :  # - !" Then
                SerialPort2.Write("Ok")
            End If
    
        End Sub
    
        Private Sub Receivedtext(ByVal [Text] As String)
    
            If Me.RichTextBox1.InvokeRequired Then
                Dim x As New OutputTextBack(AddressOf UpdateReceviedText)
                Me.Invoke(x, New Object() {(Text)})
            Else
                Me.RichTextBox1.Text &= [Text] & vbCrLf
            End If
        End Sub
    End Class
    i want my serial port start bit read should be "#" and end with "!" when it get both character in text form ,then it should received ok message in terminal or virtual com serial port.
    Please help its my task and i am newbee vb programmer.Kind ly revert ASAP.
Working...