Como: Receber Strings From Serial Ports in Visual Basic
Este tópico descreve como usar My.Computer.Ports para receber sequências de caracteres de portas seriais do computador no Visual Basic.
Para receber sequências de caracteres da porta serial
Inicialize a sequência de caracteres de retorno.
Dim returnStr As String = ""
Determine qual porta serial deve fornecer as sequências de caracteres.Este exemplo assume que é a COM1.
Use o método My.Computer.Ports.OpenSerialPort para obter uma referência para a porta.Para obter mais informações, consulte My.Computador.Ports.OpenSerialPort método.
O bloco Using permite que ao aplicativo feche a porta serial mesmo que se gere uma exceção.Todo o código que manipula a porta serial deve aparecer dentro deste bloco ou em um bloco Try...Catch...Finally.
Using com1 As IO.Ports.SerialPort = _ My.Computer.Ports.OpenSerialPort("COM1") End Using
Crie um loop Do para ler linhas do texto até que não haja mais linhas disponíveis.
Do Loop
Use o método ReadLine para ler a próxima linha de texto disponível a partir de porta serial.
Dim Incoming As String = com1.ReadLine()
Use uma instrução If para determinar se o método ReadLine retorna Nothing (significando que não há mais texto disponível).Se ele retornar Nothing, saia do loop Do.
If Incoming Is Nothing Then Exit Do End If
Adicione um bloco Else para a instrução If para tratar o caso se a sequência de caracteres é realmente lida.O bloco acrescenta a sequência de caracteres a partir de porta serial para a sequência de caracteres de retorno.
Else returnStr &= Incoming & vbCrLf
Retorne a sequência.
Return returnStr
Exemplo
Function ReceiveSerialData() As String
' Receive strings from a serial port.
Dim returnStr As String = ""
Using com1 As IO.Ports.SerialPort = _
My.Computer.Ports.OpenSerialPort("COM1")
Do
Dim Incoming As String = com1.ReadLine()
If Incoming Is Nothing Then
Exit Do
Else
returnStr &= Incoming & vbCrLf
End If
Loop
End Using
Return returnStr
End Function
Este exemplo de código também está disponível como um trecho de código IntelliSense.No selecionador de trechos de código, ele está localizado em Connectivity and Networking.Para obter mais informações, consulte Como: Inserir trechos em seu código (Visual Basic).
Compilando o código
Este exemplo assume que o computador está utilizando a COM1.
Programação robusta
Este exemplo assume que o computador está utilizando a COM1.Para obter mais flexibilidade, o código deve permitir que o usuário selecione a porta serial desejada de uma lista de portas disponíveis.Para obter mais informações, consulte Como: Show disponível Serial Ports in Visual Basic.
Este exemplo usa um bloco Using para se certificar de que o aplicativo fecha a porta mesmo se ele lançar uma exceção.Para obter mais informações, consulte Instrução Using (Visual Basic).
Consulte também
Tarefas
Como: Discar modems anexados a portas seriais no Visual Basic
Como: Enviar seqüências para portas seriais no Visual Basic
Como: Show disponível Serial Ports in Visual Basic