SERIAL BIT A BIT

YALFA 14/02/2012 17:55:28
#394734
Olá pessoal,

Estou precisando saber como faço para fechar a porta serial após o recebimento de dados utilizando o MScomm32.ocx VB6.
Os dados estão sendo transmitidos através de um receptor FM para o PC.
Grato,

Luiz
AJSO 14/02/2012 18:38:03
#394744
Caro YALFA

[ô]Abre porta
MSCommCNC.PortOpen = True

[ô]Fecha porta
MSCommCNC.PortOpen = False

Boa sorte
YALFA 14/02/2012 18:53:50
#394745
Olá Alessandro,

Abrir e fechar eu estou conseguindo, a minha dificuldade é fechar a porta após o recebimento dos dados pela serial do pc. Preciso saber como fechar a porta após o ultimo bit ser recebido. Estou usando o MSComm1_OnComm().

Segue o trecho do codigo.

Public Sub MSComm1_OnComm()

If (MSComm1.CommEvent = comEvReceive) Then
FileData() = MSComm1.Input
Put #1, , FileData()
End Sub

Obrigado,

Luiz
AJSO 14/02/2012 22:55:08
#394777
Caro YALHA

Se entendi vc precisa fechar a porta apos a final da transmissão de RECEBIMENTO do controle MSComm32.ocx no evento OnComm()

Você pode comparar dessa forma para poder fechar sua porta

Faço uma menssagem de final de RECEBIMENTO no meu sistema dessa forma ai você pode colocar o seu fechamento no lugar da menssagem.
Veja se isso ajuda

Private Sub MSComm1_OnComm()
If MSComm1.CommEvent = 2 And MSComm1.InBufferCount > 0 Then
FileData = CInt(MSComm1.Input)
ByteCount = ByteCount + 1
Put #1, ByteCount, FileData
MSComm1.Output = Chr$(26)
Else
MsgBox [Ô]Recebimento concluido com sucesso!!!![Ô], vbInformation, [Ô]Receiver[Ô]
MSComm1.PortOpen = False [ô]Aqui fica seu fechamento de Porta
End If
End Sub


Boa Sorte
YALFA 15/02/2012 10:18:39
#394799
Alessandro, obrigado até o momento.

Entendi a sua explicação mais ainda falta um detalhe, a porta serial esta sendo fechada antes dos dados serem transferidos para a gravação do arquivo.
A principio estou transferindo um arquivo txt. Percebo que no final do processo (mensagem exibida) o arquivo txt ainda não foi totalmente escrito.
Se puder me ajudar mais uma vez.

Obrigado,

Luiz
ULTRASOFT 15/02/2012 10:57:34
#394803
amigo vc sabe qual e ultimo caractere que esta sendo enviado pra vc no final de kd trasmisao, e se ele e sempre o mesmo

caso vc saiba qual e coloque uma expressao que quando chegar nele um bit apos vc fecha a porta
YALFA 15/02/2012 14:19:52
#394817
Obrigado a todos, vou direcionar a minha pesquisa em cima das informações passadas.

Tópico encerrado , respostas não são mais permitidas