Principales Mandatos para utilizar el Puerto Serie, del espacio System.IO.Ports

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

 

 

Sorteamos una Subscripcion por 1 año a MSDN

Pues SI!, tiramos la casa por la ventana.


Sorteamos una subscripcion por un año de MSDN. Todos los interesados en participar debereis enviar un correo electronico a spain_net@msn.com antes del 27.11.2006, indicando la palabra ‘SORTEO’ en el Asunto, completando el cuerpo del mensaje con vuestro Nombre, Direccion y Telefono de contacto.


ADVERTENCIA : Al ganador se le entregara un bono canjeable por una subscripcion a MSDN valida por un año. El bono caduda el 31.12.2006 y su materializacion es responsabilidad ultima del servicio de Subscripciones y el ganador del premio. Por lo que en ningun caso nos hacemos responsables de cualquier incidente derivado, por perdida o incapacidad de canjear el bono. Nuestra responsabilidad queda limitada a la entrega del Bono, siempre y cuando este nos sea librado por el servicio anteriormente mencionado.


 

Valores y Propiedades de Configuracion en VB 2005

Atendiendo a la solicitud de nuestro amigo Aaron Cuevas, os dejos este ejemplo de como manejar los valores o propiedades de una aplicación o sus controles, utilizando My.Settings, en este ejemplo contemplamos la creación de ajustes manualmente o de forma automatica desde el control.


Podeis descargarlo haciendo ‘click’ en Attachments. 


Resto a vuestra disposición para comentar lo que estimeis oportuno.
Pep Lluis,


 

DataGridView sin conexion a datos – Dimensionar filas y columnas

Este ejemplo nos muestra como crear un conjunto de filas y columnas en un DataGridView sin estar enlazado a ninguna fuente de datos, puede ser util en situaciones donde nos interesa representar datos en una cuadricula de visualizacion. Para evitar que el usuario pueda añadir filas, hemos puesto su propiedad ‘AllowUserToAddRows’ a ‘Falso’ y para evitar la edicion de las celdas ‘enabled’ en ‘Falso’. Os podeis entretener un poquito y si os interesa podeis ocultar la fila y columna que hace de cabezera o si preferimos podemos ponerles titulos, tambien personalizar el ancho / alto, el color … en fin.

 

 

Public Class Form1

    Private _MiDGV As New DataGridView      'Nuestro DataGrid

 

    '

    'Construir el aspecto de nuestro DataGrid

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load

        _MiDGV.Dock = DockStyle.Fill            'Acoplar al form

        _MiDGV.Enabled = False                  'Impedir la edicion

        _MiDGV.AllowUserToAddRows = False       'Sin opcion añadir filas

        'Dimensionar el ancho automaticamente

        _MiDGV.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill

        Me.Controls.Add(_MiDGV)                 'Añadir el Grid al form

        Me.OrdenN(3, 3)                         'Empezar con un orden 3*3

    End Sub

 

    '

    'Al pulsar las teclas 1/2/3/4/5

    Private Sub Form1_KeyUp(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyUp

        Select Case e.KeyValue              'Al pulsar .. 1/2/3/4/5

            Case 49 : OrdenN(1, 1)          'Crear un cubo de 1*1

            Case 50 : OrdenN(2, 2)          '2*2

            Case 51 : OrdenN(3, 3)          '3*3

            Case 52 : OrdenN(4, 4)          '4*4

            Case 53 : OrdenN(5, 5)          '5*5

        End Select

    End Sub

    '

    'Crear un Grid de dimension f(ilas) c(columnas)

    Private Sub OrdenN(ByVal f As Integer, ByVal c As Integer)

        Me._MiDGV.Rows.Clear()          'Eliminar todas las filas

        _MiDGV.ColumnCount = c          'Dimensionar el numero de columnas

        Me._MiDGV.Rows.Add(f)           'Dimensionar el numero de filas

 

        Dim Numerar As Integer = 0      'Numerar el contenido de las celdas

        For Each row As DataGridViewRow In Me._MiDGV.Rows

            For Each col As DataGridViewColumn In Me._MiDGV.Columns

                Numerar += 1

                row.Cells(col.Index).Value = Numerar.ToString

            Next

        Next

    End Sub

End Class