Jump to content
  • Revista PROGRAMAR: Já está disponível a edição #60 da revista programar. Faz já o download aqui!

Ricardo_Ruivo

Enviar trama pela porta serie RS232 - Via VB.NET

Recommended Posts

Ricardo_Ruivo

Boa Noite,

estou tendo alguma dificuldade em enviar uma trama pela porta rs232 do pc.

Antes de passar para o VB fiz o teste com um programa de monoturização da porta serie, neste caso está conectado um PLC à porta RS232, e pude verificar que a trama está correcta e obtenho resposta correcta do PLC.

O que pretendo agora é fazer isto atraves do visual basic. Onde já tenho várias funções para gerar a trama e calcular o checksum. Já pode verificar e todos este passos estão correctos.

Estou a definir a trama como sendo uma concatenação de uma string:

trama = "@" + "0" + "0" + "W" + "H" + "0" + "0" + "0" + "0" + "1" + "0" + "0" + "0" + "5" + "E" + "*" + Chr(13)

O Chr(13) representa o carriage-return.

Para enviar esta trama tou a usar a seguinte função:

  Using com1 As IO.Ports.SerialPort = _
           My.Computer.Ports.OpenSerialPort("COM1")
            com1.Write(trama)
            com1.Close()
        End Using

Retirado daqui: http://msdn.microsoft.com/pt-br/library/088fx85y%28v=VS.90%29.aspx

No meu pc a porta serie é a COM1.

Tenho os parametros da porta serie de acordo com os do PLC: 9600 - 7 - even - two

O meu problema é quando executo a função anterior não me saem os dados pela porta série.

Alguém sabe se é preciso alterar mais algum parâmtero na serial port, ou é necessário acrescentar mais alguma linha de comando na função?

Obrigado,

Ricardo

Share this post


Link to post
Share on other sites
Ricardo_Ruivo

Já consegui resolver o problema com menos linhas de código

SerialPort1.Open()

        If Not SerialPort1.IsOpen Then
            MsgBox("Porta não foi aberta!")
            Exit Sub
        End If

        SerialPort1.Write(trama)

        SerialPort1.Close()

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.