Estos son los mandatos e instrucciones mas frecuentes para utilizar el puerto serie:
' Principales mandatos para utilizar el puerto serie:
Serie = My.Computer.Ports.OpenSerialPort("COM1") 'Constructor
'
'Definir las características de la comunicación
Serie.BaudRate = 19200 'velocidad de comunicaciones
Serie.DataBits = 8 'Longitud para Byte de datos
Serie.Parity = Parity.Even 'paridad(enumeracion parity)
Serie.StopBits = StopBits.Two 'Bits parada después datos
'
'Abrir/Control/Liberar Puerto
Serie.Open() 'Abrir el puerto Serie
Serie.Close() 'Cerrar el Puerto Serie
Serie.Dispose() 'Liberar objecto
Dim SiNo As Integer
SiNo = Serie.IsOpen 'El Puerto esta abierto?
Dim Puerto As String
Puerto = Serie.PortName 'Nombre del puerto
'
'Manejo y Control de señales
Dim Estado As Boolean 'True=Activa / False=Inactiva
Estado = Serie.CDHolding 'Estado de la señal carrier detect
Estado = Serie.CtsHolding 'Señal Clear to Send
Estado = Serie.DsrHolding 'Señal Data Set Ready
Serie.DtrEnable = True 'Activar de Data Terminal Ready
Serie.RtsEnable = True 'Activar Request To Send
'
'Control Transmission/Recepcion
Serie.ReadBufferSize = 1024 'Definir tamaño buffer recepcion
Serie.WriteBufferSize = 1024 'Definir tamaño buffer envio
Serie.ReadTimeout = 10 'Fuera de tiempo en receción
Serie.WriteTimeout = 10 'Fuera de tiempo en transmisión
Serie.Handshake = Handshake.XOnXOff 'Control recepcion/envio
Serie.DiscardInBuffer() 'Borrar buffer de entrada
Serie.DiscardOutBuffer() 'Borrar buffer de salida
'
'Enviar datos
Contador = Serie.BytesToWrite 'Bytes en espera de ser escritos
Serie.Write("Hola Mundo") 'Enviar una cadena de caracteres
Serie.WriteLine("Hola Mundo") 'Enviar una linea
'
'Leer datos
Dim Contador as Integer
Contador = Serie.BytesToRead 'Bytes en espera de ser leidos
Serie.ReadByte() 'Leer un byte
Serie.ReadChar() 'Leer un char
Serie.ReadLine() 'Leer una linea
Serie.ReadExisting() 'Leer datos existentes en buffer
PepLluis :-)
Saludos,
Pep Lluis