comunicacion serial en visual basic 2005

gardiatech

Lanero Regular
3 Feb 2008
32
hola a todos!!! espero que exista algun experto que pueda ser de ayuda, soy nuevo en el foro asi que agradeceria sus consejos y sujerencias. bueno tengo un problema que no he podido resolver con visual basic 2005 (vb8)y es que no he podido enviar valores por puerto serial mayores a 127, y es de escencial importancia el que pueda enviar valores superiores a ese numero ya que estoy realizando un proyecto que asi lo requiere.

bueno esto es lo que sucede

en visual basic 6.0 es muy facil solo se debe escribir por ejemplo

puerto.output=chr(130)

y con esta instruccion envio el valor escrito por elpuerto serie sin complicaciones lo recibo en un microcontrolador y lo interpreto a mi gusto pero, en visual basic 8.0 (2005) al enviar el mismo dato con su nueva estructura de programacion.

puerto.write(chr(130))

no lo envia tal como se escribe sino que envia (?), esto debido a la restriccion que tiene para enviar valores mayores a 127 por la codificacion ASCII de 7 bits, reemplaza los valores que no estan dentro de la codificacion por el (?), esto complica el codigo ya que para enviar valores mayores hay que modificar el encodig y alli es donde quedo frito porque no se como cambiarla a utf8, he visto los ejemplos pero al tratar de aplicarlos en mi codigo me genera muchos problemas.

Sabe alguien como hacerlo? seria de gran ayuda cualquier comentario respecto al tema. GRACIAS!!

la ayuda de msdn es msdn2.microsoft.com/es-es/library/ms143551(VS.80).aspx pero no la he logrado concretar.
 
bueno pense que habia algun experto en el tema que me pudiese ayudar, pero parece que no de igual forma gracias, de todos modos si alguien tiene dudas acerca de comunicaciones seriales en vb6 con gusto le ayudare ya que con esa version no tengo problemas
 
Yo quiero aprender...

Hola, navegando en busca de informacion, tutoriales, codigo sobre el manejo del puerto serie me encontre con este foro y te tomo la palabra de ayudar... jejeje bueno con VB 6 ya se comunicar 2 Pc en forma de Chat... un ejemplo que trae.... pero quiero algo mas basico por ejemplo montar un circuito con led's y hacerlos prender con una secuencia eso seria sacar informacion por el puerto y otro con un pulsador o un sensor de temperatura recibir informacion por el pto serie...

gracias por la ayuda que me puedas brindar
 
Hola, navegando en busca de informacion, tutoriales, codigo sobre el manejo del puerto serie me encontre con este foro y te tomo la palabra de ayudar... jejeje bueno con VB 6 ya se comunicar 2 Pc en forma de Chat... un ejemplo que trae.... pero quiero algo mas basico por ejemplo montar un circuito con led's y hacerlos prender con una secuencia eso seria sacar informacion por el puerto y otro con un pulsador o un sensor de temperatura recibir informacion por el pto serie...

gracias por la ayuda que me puedas brindar

hola, gracias por aportar.
bueno, primero que todo lo de comunicar dos pcs es relativamente sencillo debido a que estos tienen toda la circuiteria necesaria para tal proposito, lo unico que se hace es conectarlos a traves del cable nullmodem y utilizar hyperterminal, ya si se quiere sacar informacion por ejemplo a unos leds, deberas tener un circuito apropiado para tal uso, lo mas correcto es utilizar un max 232 para hacer la interface entre el pc y el circuito que se cree, en cuento al circuito pues yo generalmente uso microcontroladores de Microchip para recibir la informacion proveniente desde el pc, y usarla a mi gusto. por ejemplo puedes conectar un lcd al microcontrolador y este asu vez al pc, desde el pc creas el programa de vb6 para enviar informacion a mostrar en el lcd, pero si lo quieres hacer simple, pues envez de un lcd utilizarias leds para mostrar un codigo.

otro ejemplo seria grabar una memoria EEPROM mediante el pc y un microcontrolador, adquisicion de datos....... en fin. las aplicaciones son muchisimas.. si tienes alguna que quieras implementar, la del sensor de temperatura es muy buena aplicacion y relativamente sencilla de implementar.

en mi caso me gustan la aplicaciones visuales o donde se pueda programar dispositivos o donde pueda mostrar en el pc variables de instrumentacion obtenidas por un circuito.........como por ejemplo temperatura, voltajes, corrientes, peso, etc.


si deseas montar algo me avisas y tratare de ayudarte..
 
Hola a todos,

Yo estoy tratando de comunicar un pequeño robot con un PC via 2 radiomodems (como un puerto serie), y controlarlo con un joystick. Estoy programando la parte del PC con VisualBasic 6.0, y la parte del robot en ensamblador.
Os pongo un ejemplo para explicaros mi problema.
Mi intención es que cuando le envíe un 1 desde el PC al robot, éste vaya hacia delante; cuando le envíe un 2 vaya hacia atrás; con un 3 que gire a la izquierda, con un 4 que gire a la derecha, y si le envío un 0, que se quede quieto.
Aquí pongo el código correspondiente al envío desde Visual Basic de los datos:

Select Case direccion
Case 1:
MSComm1.Output = Chr(1)
DoEvents
Text5.Text = "Enviando Adelante"
Case -1:
MSComm1.Output = Chr(2)
DoEvents
Text5.Text = "Enviando Atras"
Case 0:
MSComm1.Output = Chr(0)
DoEvents
Text5.Text = "Enviando Parado"
End Select

Select Case giro
Case 1:
MSComm1.Output = Chr(4)
DoEvents
Text5.Text = "Enviando Derecha"
Case -1:
MSComm1.Output = Chr(3)
DoEvents
Text5.Text = "Enviando Izquierda"
Case 0:
MSComm1.Output = Chr(0)
DoEvents
Text5.Text = "Enviando Parado"
End Select


Ahora bien, mi pregunta es: ¿En qué formato llegan los datos al microcontrolador, en binario, hexadecimal, ASCII?
Es decir, si para ir hacia delante usa la instrucción MSComm1.Output = Chr(1),
¿qué dato tengo que buscar en el puerto serie del micro, #01H (valor en hexadecimal), o #31H (valor en ASCII para el 1 (digital))?

Gracias, y un saludo
 

Los últimos mensajes

Los últimos temas