Fernando, contestando a tu pregunta de cómo capturar los cambios en las señales de control de puerto serie, te dejo este ejemplo básico esperando te sea de utilidad.
Dim MiSerialPort As New IO.Ports.SerialPort
Sub Inicializando()
MiSerialPort.Open()
AddHandler MiSerialPort.PinChanged, AddressOf MiSerialPort_PinChanged
End Sub
Private Sub MiSerialPort_PinChanged(ByVal sender As System.Object, ByVal e As System.IO.Ports.SerialPinChangedEventArgs)
Select Case e.EventType
Case IO.Ports.SerialPinChange.CtsChanged
‘Clear To Send
If MiSerialPort.CtsHolding Then
‘CTS esta en ON
Else
‘CTS esta en OFF
End If
Case IO.Ports.SerialPinChange.DsrChanged
‘Data Set Ready
If MiSerialPort.DsrHolding Then
‘DSR esta en ON
Else
‘DSR esta en OFF
End If
Case IO.Ports.SerialPinChange.Ring
‘Ring
Case IO.Ports.SerialPinChange.Break
‘Break
Case IO.Ports.SerialPinChange.CDChanged
‘Carrier Detect
If MiSerialPort.CDHolding Then
‘…
Else
‘….
End If
End Select
End Sub
:-))
Pep Lluis,