Fórum Mais tempo Lendo Porta Serial #315047

06/03/2006

0

Bom dia Galera, Utilizando o Componente ComPort eu envio uma informação para a porta mais quando o hardware envia um resposta utiliznado a função:
ComPorta.ReadStr(Resposta, count);
ele as veses não consegue pegar todo o contedudo da variavel de responsta ex: se o equipamento me responde ´2A2B2C2D´ na maioria das veses ele so pegar a ´2A2B2C´ OU ´C2D´ como fasso para ele ficar mais tempo lendo a porta exemple quando excrever para a porta ele ler por 3 segundos a porta. como se fosse um timeOuts na porta.


Marcal

Marcal

Responder

Posts

06/03/2006

Marcal

Galera e bem simples acho q e so um alinha ou ajuste no componente que não estou achando. um TimeOuts de leitura na porta quero q ele fique 3 segundo lendo a porta


Responder

Gostei + 0

06/03/2006

Kitsystem

Vc tera que criar uma varivel Global e apenas zerar a mesma qdo todo o conteudo chegar

Var sStr: String;


Evento
sStr:= sStr +ComPorta.ReadStr(Resposta, count);


ai vc monta um protocolo que sabe qdo a string global esta completa e a utiliza e depois já zera ela para a proximo leitura


Responder

Gostei + 0

07/03/2006

Marcal

Certo Vinicios mais e impossivel eu criar um protocolo para checar se a variavel esta completa pq eu posso receber n valores pela porta.

Eu fiz um jeito deu certo mais trava o sistema por alguns segundos o q não pode acontecer quando envio writeln() para a porta eu criei um For
conta de 1 a 70000 ai quando termina ele receber as informações correta pela porta. Só q desse jeito não pode ser feito.


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar