ALGUEM PODER ME AJUDAR AQUI.

DECESARI 24/12/2012 08:43:52
#416362
OLA ,
EU FIZ PROGRAMA PARA CONTROLAR UM ROBÔ USANDO AS TECLAS DE DIREÇÃO DO TECLADO.
QUENDO EU APERTO O BOTÃO ELE ENVIA UM CARACTERES [Ô]A[Ô] EO ROBÔ COMEÇA ANDAR .QUANDO EU SOLTO O BOTÃO ELE ENVIA UM CARACTERES [Ô]E[Ô] PARA O ROBÔ.
O PROBLEMA QUE TEM HORA QUE A CARACTERES [Ô]E[Ô] DEMORA PARA ENVIA COMO EU FAÇO PARA DE UM PAUSA MAIR
OU UM INTERVALO PARA O ENVIO PARA A LETRA [Ô]E[Ô]
ALGUEM PODE ME AJUDA AQUI ESTÁ O CONDIGO EM VB6
Private Sub Command1_Click()
Private Sub Form_Load()
MSComm1.PortOpen = True
Timer1.Interval = 3
End Sub
Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyUp
Shape1.FillColor = &HFF&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]A[Ô]
Text1.Text = [Ô] A[Ô]
Case vbKeyDown

Shape2.FillColor = &HFF&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]B[Ô]
Text1.Text = [Ô] B[Ô]
Case vbKeyLeft

Shape4.FillColor = &HFF&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]C[Ô]
Text1.Text = [Ô] C[Ô]
Case vbKeyRight

Shape3.FillColor = &HFF&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]D[Ô]
Text1.Text = [Ô] D[Ô]
End Select
End Sub

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyUp
Shape1.FillColor = &HFF00&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]E[Ô]
Text1.Text = [Ô] E[Ô]
Case vbKeyDown

Shape2.FillColor = &HFF00&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]E[Ô]
Text1.Text = [Ô] E[Ô]
Case vbKeyLeft

Shape4.FillColor = &HFF00&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]E[Ô]
Text1.Text = [Ô] E[Ô]
Case vbKeyRight

Shape3.FillColor = &HFF00&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]E[Ô]
Text1.Text = [Ô] E[Ô]
End Select
End Sub

DECESARI 26/12/2012 08:09:05
#416396
Ola MASTERNEWBIE blz.
Onde eu posso usar o interval endre as teclas.
Ou no meio.Vc eu não sei muito vb6 estou pegando de vagar.
Agradeço.
MARCELO.TREZE 26/12/2012 08:44:05
#416399
Qual o setting o do mscom

ex:

MSComm1.Settings = [Ô]9600,N,8,1[Ô]

ou você não definiu o setting?


MARCELO.TREZE 26/12/2012 09:01:40
#416400
outra coisa faz um teste fechando a porta exemplo:

Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyUp
Shape1.FillColor = &HFF00&
MSComm1.PortOpen = False
Text1.Text = [Ô] E[Ô]
Case vbKeyDown

Shape2.FillColor = &HFF00&
MSComm1.PortOpen = False
Text1.Text = [Ô] E[Ô]
Case vbKeyLeft

Shape4.FillColor = &HFF00&
MSComm1.PortOpen = False
Text1.Text = [Ô] E[Ô]
Case vbKeyRight

Shape3.FillColor = &HFF00&
MSComm1.PortOpen = False
Text1.Text = [Ô] E[Ô]
End Select
End Sub
DECESARI 26/12/2012 09:26:48
#416402
Ola Marcelo eu difini o Settings = [Ô]9600,N,8,1[Ô]
Gora me diga onder eu possou colocar as caracteres de envio.
neste exemplos que vc me passou.Vc me desculpa como eu disse estou apredendo
Obrigado
MARCELO.TREZE 26/12/2012 09:34:43
#416403
este exemplo é somente para testarmos se há a parada imediata sem atrasos, funcionando faremos a demais modificações.

DECESARI 26/12/2012 09:49:30
#416404
Vc me desculpa ta..Para testar eu preciso enviar uma caracetres [Ô]A[Ô] Para que o robô ande.Soltar a tecla e enviar [Ô]E[Ô] Parar o robô parar
O bv funciona bem.Tem hora que não envia a letra [Ô]E[Ô] O robô vai para frete direto tenho que correr a traiz dele.kkkkkkk
Obrigada.
MARCELO.TREZE 26/12/2012 10:10:53
#416405
eu entendi o problema o que eu quero que você entena é o seguinte eu postei um código para fechar a porta, o que teoricamente deveria parar o robo, eu sei que o E para o robo, mas fechando a a porta esta comunicação não seria mais eficiente, vou postar um exemplo completo para você testar, mas somente a base de teste é que saberemos, veja

apague o código do evento load do form e proceda assim

Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer)
MSComm1.PortOpen = True
Select Case KeyCode
Case vbKeyUp
Shape1.FillColor = &HFF&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]A[Ô]
Text1.Text = [Ô] A[Ô]
Case vbKeyDown

Shape2.FillColor = &HFF&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]B[Ô]
Text1.Text = [Ô] B[Ô]
Case vbKeyLeft

Shape4.FillColor = &HFF&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]C[Ô]
Text1.Text = [Ô] C[Ô]
Case vbKeyRight

Shape3.FillColor = &HFF&
MSComm1.Output = [Ô]CESAR[Ô] & [Ô]D[Ô]
Text1.Text = [Ô] D[Ô]
End Select
End Sub


Private Sub Form_KeyUp(KeyCode As Integer, Shift As Integer)
Select Case KeyCode
Case vbKeyUp
Shape1.FillColor = &HFF00&
Text1.Text = [Ô] E[Ô]
Case vbKeyDown

Shape2.FillColor = &HFF00&
Text1.Text = [Ô] E[Ô]
Case vbKeyLeft

Shape4.FillColor = &HFF00&
Text1.Text = [Ô] E[Ô]
Case vbKeyRight

Shape3.FillColor = &HFF00&
Text1.Text = [Ô] E[Ô]
End Select
MSComm1.PortOpen = False [ô] aqui fechamos a porta para interromper a comunicação
End Sub


agora só saberemos que funciona se você testar caso contrário tudo que eu disser será pura especulação

DECESARI 26/12/2012 10:18:32
#416406
Ok Vou testar.Em casa hoje.Vc me desculpa ta..
Obrigado
Um abraço
Faça seu login para responder