TODOPIC
Lenguajes de programación para PC => Visual Basic => Mensaje iniciado por: JavisusII en 05 de Agosto de 2006, 13:26:57
-
Buenas,
Hasta la fecha me ha funcionado muy bien el VB6, pero claro muchachos debemos ir
pensando en actualizarnos un poco. (y yo el primero )
Alguien sabe como manejar el puerto serie, con el Visual Basic 2005 Express.?
Saludos.
PD: jeje curioso, pero es la primera pregunta que hago al foro. (y dichosa modernidad...)
-
Hola JavisusII, para comunicarte atravez del puerto serie debes utilizar el componente SerialPort (el MSCOMM ya no viene en VB 2005). Este componente es algo distinto a su predecesor pero es bastante mas potente, por ejemplo en lugar de ejecutar la rutina OnComm cada vez que sale o entra n bytes en este componente tienes un evento cuando se transmiten bytes y otro cuando se reciben, tambien tiene TimeOuts para la transmisión de datos y otro para la recepción.
En la Ayuda tienes ejemplos, tambien encontraras un programa de ejemplo en los links que obtienes al registrar la copia.
Espero haberte ayudado, sino hazmelo saber e intentaremos nuevamente.
Saludos
Sergio
-
:)hola que tal, yo tambien andaba buscando como leer datos del puerto serial desde el visual basic 2005, intente varios codigos pero la verdad solo me enredaban, al cabo de 2 dias por fin entre las muchas combinaciones de codigos, encontre el que necesitaba, es para la recepcion de una cadena de datos enviados por el pic16f84, jajaja talvez no sea mucho pero enverdad ayuda a quien no tiene ni idea de como hacerlo, asi como yo :P.
si a uno de ustedes les marca un signo de interrogacion en vez del dato que enviaron este es el codigo que necesitan.
Bueno espero que les sirva:
Public Class Form1
'En tiempo de definiciones
Delegate Sub Refrescar()
Private SerialPort1 As New IO.Ports.SerialPort
Dim DatosRecibidos As string
'
'En tiempo de Carga
'Funcion de recibir los datos
Private Sub RecibeDatos(ByVal sender As Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs)
DatosRecibidos = SerialPort1.ReadExisting
Me.Label1.Invoke(New Refrescar(AddressOf ActualizarDatos))
End Sub
'Funcion de recibir los datos
Private Sub ActualizarDatos()
Label1.Text = DatosRecibidos
End Sub
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
SerialPort1 = My.Computer.Ports.OpenSerialPort("COM1", 2400, IO.Ports.Parity.None, 8, IO.Ports.StopBits.One)
AddHandler SerialPort1.DataReceived, AddressOf RecibeDatos
End Sub
End Class