Hola chicos recurro de nuevo a ustedes por que no puedo lograr recibir unas cadenas por el puerto serie. la cosa es asi
Mando por el microcontrolador una serie de datos separados por un espacio.
set_adc_channel(0);
delay_us(10);
DatoNivel=read_adc();
set_adc_channel(1);
delay_us(10);
Tempe=read_adc();
set_adc_channel(2);
delay_us(10);
DatoVel=read_adc();
set_adc_channel(3);
delay_us(10);
DatoVoltaje=read_adc();
set_adc_channel(4);
delay_us(10);
DatoCorri=read_adc();
if(send){
printf("%Lu %Lu %Lu %Lu %Lu \n\r",DatoNivel, Tempe, DatoVel, DatoVoltaje, DatoCorri);
}
Y pues los recibo en VB6, el cual recibe bien los datos, pero tengo muchos problemas con la sincronizacion de los datos :
El codigo que tengo en Visual es el siguiente
Private Sub MSComm1_OnComm()
Dim i As Integer
Dim Valor As String
Dim MiCadena, Cadena As String
If MSComm1.CommEvent = comEvReceive Then
Valor = MSComm1.Input
Texto_Recibido.Text = Valor
i = InStr(Valor, Chr(13))
If i = 0 Then
Cadena = Cadena & Valor
Else
Cadena = Cadena & Left(Valor, i)
Texto_Recibido.Text = Cadena
MiCadena = Split(Cadena, " ", -1, 1)
Text1.Text = Val(MiCadena(0))
Text2.Text = Val(MiCadena(1))
Text3.Text = Val(MiCadena(2))
Text4.Text = Val(MiCadena(3))
Text5.Text = Val(MiCadena(4))
'Cadena = ""
End If
Valor = MSComm1.Input
End If
If MSComm1.CommEvent = comEvSend Then
Texto_Mensajes = "0"
End If
End Sub
El problema es que de repente al poner la informacion ya separada. la primera vez que recibe lo hace bien pero despues cuando vuelvo a mandar mas datos llegan menos y se me causa un error en las cajas de texto.
Thera are someone who can help me?