USO DEL PUERTO SERIAL PARA LA INTERCONEXIÓN DE DOS DTE (PC–PC) USANDO C# Y VB .NET CON DETECCIÓN DE ERRORES MEDIANTE EL MÉTODO CRC Y CON CONTROL DE FLUJO CON ARQ SELECTIVO

Páginas: 5 (1114 palabras) Publicado: 2 de junio de 2013






OBJETIVO:

Comprobar el funcionamiento del puerto serial en la interconexión de dos equipos terminales de datos (PC) usando Visual C# y VB .NET (RS-232) con detección de Errores mediante los métodos CRC16 y con control de flujo por hardware.


INVESTIGACION:

Distribución de los pines del puerto serie


Pin
Abrev.
Nombre
Descripción
Dirección
1
CD
Carrier DetectDetecta si hay conexión con el otro extremo.


2
RXD
Receive Data
Recepción de datos


3
TXD
Transmit Data
Transmisión de datos


4
DTR
Data Terminal Ready
Terminal de datos listo.


5
SG
Signal Ground
Tierra


6
DSR
Data Set Ready
Indica si la UART está preparada para la conexión.

7
RTS
Request To Send
Indica una petición de envío


8
CTS
Clear ToSend
Indica al otro dispositivo que ya puede enviar los datos.

9
RI
Ring Indicator
Se activa cuando el modem detecta una llamada del PSTN

Pines a usar en la práctica

Declaración del puerto serial en VB .Net, Visual C#, Matlab y comandos asociados.


Visual Basic .Net

‘Declaración del Puerto
Public WithEvents SP as New IO.Ports.SerialPort

‘Parámetros del PuertoControl.CheckForIllegalCrossThreadCalls = False
SP.BaudRate = 300 'Velocidad = 300bps
SP.PortName = "COM1" 'Nombre del Puerto
SP.Parity = IO.Ports.Parity.None 'Paridad = ninguna
SP.StopBits = IO.Ports.StopBits.One 'Bit de parada = 1
SP.Handshake = IO.Ports.Handshake.None 'Habilita en pin RTSSP.DataBits = 8 'Bits de datos= 8
SP.NewLine = "$" 'caracter terminador
SP.ReceivedBytesThreshold = 3 'Umbral de recepción en 3
SP.Encoding = System.Text.Encoding.GetEncoding(1252) 'Codificación occidental
Try
SP.Open() 'Se adueña del puerto
Catch ex AsException
MsgBox("Error en el Puerto. " & ex.Message) 'Muestra el error
End Try

'Recepción del mensaje: Rutina que se activa al recibir 3 bytes por el puerto
Private Sub recepcion(ByVal sender As System.Object, ByVal e As System.IO.Ports.SerialDataReceivedEventArgs) Handles SP.DataReceived
Dim Ndata, Dato, k, Mensj
Mensj = ""
Ndata =SP.BytesToRead 'Obtiene el número de bytes de datos en el búfer de recepción
For k = 0 To Ndata - 1
Dato = SP.ReadChar 'Lee sincrónicamente un carácter en el búfer de entrada
Mensj = Mensj + Chr(Dato)
Next
Label8.Text = Mensj
End Sub












Visual C#


‘Declaración del Puerto
System.IO.Ports.SerialPortSP = New system.IO.Port.SerialPort();


‘Configuración de los Parámetros del Puerto
SP.PortName = "COM2"; //Nombre del puerto
SP.Parity = System.IO.Ports.Parity.None; //Paridad Par (.even), impar (.odd), ninguna (.none)
SP.BaudRate = 300; //Velocidad de trasmisión (300bps)SP.StopBits = System.IO.Ports.StopBits.One; //Bit de parada (1)
SP.DataBits = 8; //Número de bits de datos (8)
SP.ReceivedBytesThreshold = 3; //Umbral de datos recibidos
SP.NewLine = "$"; //Caracter terminador
SP.DiscardInBuffer(); //Descarta los datos del búfer de recepción del controlador serieSP.ReadBufferSize = 10; //Tamaño del bufer de lectura SP.WriteBufferSize = 10; //Tamaño del bufer de escritura
SP.Encoding = System.Text.Encoding.GetEncoding(1252); //Codificación europea occidental
CheckForIllegalCrossThreadCalls = false; //Obtiene un valor que indica irregularidades en el acceso


‘Acceso al Puerto...
Leer documento completo

Regístrate para leer el documento completo.

Estos documentos también te pueden resultar útiles

  • Interconexión a la PC mediante Arduino
  • Mantenimiento de la PC: Detección metódica de fallas en la PC
  • Configuracion de una red para dos pc
  • Manual para el uso del teclado de un pc
  • Errores en mi pc
  • Los Puertos (Pc)
  • Errores En Una Pc
  • flujo de una pc

Conviértase en miembro formal de Buenas Tareas

INSCRÍBETE - ES GRATIS