Cirilo Veloso - consultoria e desenvolvimento em Delphi, VB, ASP e Clipper


Comunicação serial
Todo equipamento ligado à porta serial do micro funciona da seguinte forma:
Na CPU(eprom) do equipamento estão gravados os parametros de comunicação:
Velocidade
Paridade
Databits
Stopbits

Isto vale para qualquer dispositivo ligado a porta serial: Leitores de código de barras, balanças, etc..
Importante:
Estes parametros deverão ser do conhecimento do programador, geralmente o fabricante do dispositivo informa a configuração no manual.
Em alguns dispositivos esta configuração pode ser alterada pelo usuário, por exemplo no leitor de barras isto é possível passando um cartão de código de barras.

O seu programa terá que configurar a porta serial do micro com os mesmos parametros do dispositivo. Para isso temos uma série de componentes para Delphi. TurboASync32, ASync32, ComPort, IOPort, etc..
Todo componente para porta serial possui as propriedades:
Nome Porta: COM1, COM2 , COM3 , etc..
Velocidade: 2400,4800,9600, etc..
Paridade : N (None) O (odd=ímpar) E (Even=par) etc..
DataBits : 5,6,7,8
StopBits : 1,1.5,2
(Não exatamente com estes nomes)

No componente Async32 são:
vaComm1.DeviceName:=
VaComm1.BaudRate :=
VaComm1.Databits :=
VaComm1.Parity :=
VaComm1.StopBits :=

Após atribuir os paramentros o seu programa poderá abrir a porta de comunicação.
Geralmente um método chamado OPEN: no caso do Async32 = VaComm.Open
Em seguida você estará apto para Ler ou escrever na porta serial:
Estes métodos geralmente chamam-se: read/write ou input/output etc, no Async32 a leitura é realizada no evento abaixo:
procedure VaComm1RxChar(Sender: TObject; Count: Integer);
begin
   MyVar:=MyVar + VaComm1.ReadText;
end;

Para enviar uma String para porta serial no ASync32:
VaComm1.WriteText('Sua variavel');

No final sempre fechar a comunicação:
VaComm1.Close;


Componente VaComm do pacote Async32

Componente Async32 para Delphi6.

Exemplo do Componente ASync32 para Delphi 6
Programa demonstra como capturar cheques na porta serial com o componente ASync32.

Exemplo do Componente ASync32 para Delphi 4 e 5
Programa demonstra como capturar cheques na porta serial com o componente ASync32.




Turbo Async pro para Delphi 7
Versão do Async para Delphi7.

ComPort
CPort-3.0 para Delphi7.

Serial NG
Serial NG.




Comunicação serial com API do Windows 1
Exemplo utiliza API do Windows para acessar a porta serial e enviar conteúdo para um TMemo.

Comunicação serial com API do Windows 2
Exemplo utiliza API do Windows para acessar a porta serial e enviar conteúdo para um TLabel.




Exemplo do ActiveX MSComm32 para VB
Programa demonstra como capturar cheques na porta serial com o ActiveX MSComm32.

Documentação do MsComm32 na Microsoft

Site com dicas de utilização do MsComm32




Exemplo da IOLib para Clipper
Programa demonstra como capturar cheques na porta serial com a Biblioteca IOLib para Clipper52.




Componente e Exemplo
Porta Serial em Kylix, componente e exemplo.


Referências Técnicas
Download de ActiveX para Porta Serial
Apostila em português sobre RS232
Histórico, Pinagem, Cabos, Conversores sobre RS232 (inglês)
Introdução a Comunicação serial(inglês)
Tutorial em inglês sobre RS232
Site sobre RS232 em inglês