COMO EXTRAER UN CARACTER ASCII DE UN VARIANT
Publicado por Roberto (1 intervención) el 21/07/2008 15:55:27
Hola amigos. Soy un programador de lenguaje C con 30 años de experiencia en electrónica y microprocesadores ( hard y soft ) y no tengo ninguna en VB6. Les pido disculpas por la molestia.
Pude realizar una pequeña terminal de comunicaciones para conectarme con un equipo que requiere comunicación con un PC via RS232. Está basada en ejemplos obtenido en varios sitios y utiliza el objeto MSCOMM. Los datos recibidos se alojan como string en un tipo de dato variant. Como puedo hacer para obtener los datos caracter por caracter alojados en el variant ??
Por ejemplo:
Public cadena_entrada As Variant ' Texto recibido por el puerto serial
If MSComm1.CommEvent = comEvReceive Then
cadena_entrada = MSComm1.Input
Texto_Recibido.Text = Texto_Recibido.Text + cadena_entrada ' al texbox
End If
Creo haber visto que se puede ajsutar el umbral de recepcion para que se genere un evento por cada caracter. Hoy ese umbral está en cero, o sea que no hay restricción al número de bytes entrantes desde el port serie. Pero no sé si esto es lo mejor. Me podrán indicar cómo hago ?
Muchísimas gracias y disculpen la molestia
Roberto
Pude realizar una pequeña terminal de comunicaciones para conectarme con un equipo que requiere comunicación con un PC via RS232. Está basada en ejemplos obtenido en varios sitios y utiliza el objeto MSCOMM. Los datos recibidos se alojan como string en un tipo de dato variant. Como puedo hacer para obtener los datos caracter por caracter alojados en el variant ??
Por ejemplo:
Public cadena_entrada As Variant ' Texto recibido por el puerto serial
If MSComm1.CommEvent = comEvReceive Then
cadena_entrada = MSComm1.Input
Texto_Recibido.Text = Texto_Recibido.Text + cadena_entrada ' al texbox
End If
Creo haber visto que se puede ajsutar el umbral de recepcion para que se genere un evento por cada caracter. Hoy ese umbral está en cero, o sea que no hay restricción al número de bytes entrantes desde el port serie. Pero no sé si esto es lo mejor. Me podrán indicar cómo hago ?
Muchísimas gracias y disculpen la molestia
Roberto
Valora esta pregunta


0