puerto serie en un lap top

marthaa
30 de Noviembre del 2005
Hola tengo un problema: hice mi programa en visual basic 6.0 para manejar el puerto serie de una PC y funciona de maravilla. El problema es que tuve que llevar mi programa para calificar y lo hice en una lap top que no tiene puerto serie. Asi que utilizé un convertidor usb-serial. De aqui que no puedo enviar datos correctamente. He escuchado que quiza son necesarios diferentes .dll o una programación distinta para manejar serial y usb. alguien sabe que es lo que ocurre o como solucionar este problema?
Muchas gracias por leer

mvallejos
30 de Noviembre del 2005
Martha

Nunca me tocó ese caso, pero, posiblemente, dado el puente USB para simular un serie, deba modificarse la configuración del puerto.
Esto es, protocolo, velocidad de transmisión, paridad, etc.
Esto es posible ya que tu dices que transmite mal y no que directamente no existe la comunicación.
Por otro lado, en vez de las dlls, intenta hacerlo con el componente MSComm, para ver si te da el mismo problema.

Saludos

marthaa
30 de Noviembre del 2005
Pues las propiedades(velocidad, paridad, etc) no las puedo cambiar porque el equipo con el que me estoy comunicando tiene esas caracteristicas y de otra forma no entendería los datos que le envio ni por el puerto serie. Si utilizé mscomm para programar y tienes razón en que si hay comunicación pero es incorrecta. Si envío algo por el serial lo envía bien pero si cambio al convertidor usb-serial y quiero enviar algo distinto me envía lo último que envié por el serial y no los nuevos datos. Alguna otra idea.
Gracias

mvallejos
30 de Noviembre del 2005
Lo que me explicas parece como que el envío de un nuevo dato dispara el anterior, es decir, no se vacía el buffer de transmisión.
No se que pueda ser, pero evidentemente algo en la configuración del MSComm no coincide con el emulador.
Verifica las propiedades

Settings (configuracion de puerto, velocidad,
paridad, bits de datos y bit de parada)
OutBufferSize (tamaño de buffer de salida)

Debes tener en cuenta algo importante, antes de enviar datos nuevos, verifica la propiedad OutBufferCount, que te indica si hay datos en espera de salida.

No tengo mas para decirte, espero que sea de ayuda

Saludos y mucha suerte