RS232 Serial Communication in Visual Basic Comunicao Serial
RS232 em Visual Basic
Keywords: RS 232, Visual Basic Palavras-chave: RS 232, Visual
Basic
This tutorial provide to those who are interested, a quick way
to estabish a serial communication using Visual Basic (VB). Este
tutorial fornecer para aqueles que esto interessados, uma maneira
rpida de elaborar uma comunicao serial usando o Visual Basic (VB).
For this tutorial it is assumed that the reader: Para este tutorial
assume-se que o leitor:
- wants to learn how to establish a serial communication Visual
Basic; - Quer saber como estabelecer uma comunicao serial Visual
Basic; - has some programming knowledge; - Tem algum conhecimento
de programao; - want to write programs under Windows; - Quero
escrever programas no Windows;
This tutorial's purpose is to respund to questions like: O
propsito deste tutorial respund a perguntas como:
- WHY DO I NEED THIS? - Por que eu preciso disso? - How
complicate is to write a program that deals with serial
communication? - Como complicar escrever um programa que lida com a
comunicao serial? - How difficult is to understand them? - Como
difcil entend-los? - Do I really need to be an expert programmer to
be able to write such a code, or these things are not so
complicated? - Eu realmente preciso para ser um programador
especialista para ser capaz de escrever tal cdigo, ou essas coisas
no so to complicadas? - What I need is just a practical approach of
this problem, and I want to be able to write VB programs and
receive/send something from the serial port; - O que eu preciso
apenas uma abordagem prtica deste problema, e eu quero ser capaz de
escrever programas VB e receber / enviar algo a partir da porta
serial;
Why do I need this? Por que eu preciso disso?
There are lot of tools which can communicate with your PC using
serial port. Existem muitas ferramentas que podem se comunicar com
o seu PC atravs da porta serial. You, can send commands to them and
receive data from them very easy. Voc, pode enviar comandos para
eles e receber dados a partir deles muito fcil. This tutorial will
describe how exactly to write a program to receive some serial
data. Este tutorial ir descrever exatamente como escrever um
programa para receber alguns dados seriais. In my case, I had to
write a program that receves data from a Trimble GPS unit. No meu
caso, eu tinha que escrever um programa que receves dados de um
Trimble GPS. This unit continuously send to PC a packet of data
(ASCII string). Esta unidade enviar continuamente para o PC de um
pacote de dados (string ASCII). This data was to be displayed in a
window using VB. Estes dados era para ser exibido em uma janela
usando VB. As I new the data package type, I was using the
Hyperterminal first to see how the data look like. Como eu novo
tipo de pacote de dados, eu estava usando o primeiro Hyperterminal
para ver como os dados parecem. After setting the port to COM1, the
speed to 9600 and set "Flow Control" to NONE, I got the data.
Depois de definir a porta para COM1, a velocidade para 9600 e
definir "controle de fluxo" para NONE, eu tenho os dados. They are
shown below: Estas so apresentadas a seguir:
So, we know now, that we ave to deal with a string of ASCII
characters. Ento, sabemos agora, que ns Ave para lidar com uma
seqncia de caracteres ASCII.
Writting a VB program to get the data Escrita de um programa VB
para obter os dados
Now, lets write the VB program. Agora, vamos escrever o programa
VB. Launch VB. Lanamento VB.
Choose "StandardEXE" option and VB will open the project.
Escolha "StandardEXE" opo e VB vai abrir o projeto. Click on the
form and name it "frmGPS". Clique no formulrio com o nome "frmGPS".
In the "Caption" field type "Read GPS". No campo "legenda" "Ler
GPS". Save the project and the form. Salve o projeto e da forma.
Now, you need to add the component that takes care of the
communication. Agora, voc precisa adicionar o componente que cuida
da comunicao. This is called Microsoft Communication Control. Isso
chamado de Microsoft Comunicao Controle. To add this component,
click on "Project" and choose "Components" Para adicionar este
componente, clique em "Project" e escolha "Componentes"
Another window will open. Outra janela ser aberta. Here, look
for "Microsoft Communication Control", check it and hit OK. Aqui,
procure por "Microsoft Controle de Comunicao", marque-o e clique
OK.
The control will apear in your project O controle vai aparecer
em seu projeto
Click o the small phone icon and put it on your canvas. Clique o
o cone de telefone e coloc-lo em sua tela. Click on it and in the
"InputLen" field type 128. Clique nele e no "InputLen" 128 tipo de
campo. Now, we are ready to start coding. Agora, estamos prontos
para iniciar a codificao. Double click on your form and the code
window will open. D um duplo clique no seu formulrio e na janela de
cdigo ser aberta. In the "Private Sub Form_Load()" type: No "Sub
Form_Load () Privada" tipo:
txtDisplay.Text = "" 'Enable Port txtDisplay.Text = "" 'Ativar
porta MSComm1.PortOpen = True 'Open port Abra a porta
MSComm1.PortOpen = True ' MSComm1.Output = "0" + Chr(13) 'Configure
Port as Input MSComm1.Output = "0" + Chr (13) 'Configurar porta
como entrada
When you launch the program, VB will initialize the port. Quando
voc iniciar o programa, o VB ir inicializar a porta. Draw a text
box on your canvas and name it txtDisplay. Desenhe uma caixa de
texto em sua tela com o nome txtDisplay. Set the "Multiline" option
to TRUE. Defina a opo "Multiline" para TRUE. This is the place
where the data comming from serial port is going to be displayed.
Este o local onde os dados que vm da porta serial que vai ser
visualizado. The next thing you need is a timer. A prxima coisa que
voc precisa de um temporizador. Put a timer on your canvas and name
it tmrTimer. Colocar um temporizador em sua tela com o nome
tmrTimer. In the interval field type 100. No campo Intervalo de
digitar 100. Double click on it and in the code window type D um
duplo clique sobre ele e no tipo de janela de cdigo
txtDisplay.Text = txtDisplay.Text + Chr(13) + MSComm1.Input
txtDisplay.Text = txtDisplay.Text + Chr (13) + MSComm1.Input
The program is ready now. O programa j est pronto. Save
everything and make sure that you have some sort of device that
sends you some ASCII character through COM1. Salve tudo e
certifique-se de que voc tem algum tipo de dispositivo que envia
alguns caracteres ASCII atravs COM1. Here is how data comming from
Trimble GPS looks like. Aqui est como os dados vm da Trimble GPS
parece.