2011-05-10 80 views
1

我正在開發一個項目,我需要在開關關閉時觸發事件。我的理解是,可以在串口上使用控制線,並讀取開關是否閉合。我已經找到了如何將開關連接到引腳的原理圖,但是我無法找到關於如何讀取開關狀態的任何示例代碼。如何讀取串行端口控制線狀態.net

示意圖位於:http://irtel.uni-mannheim.de/pxlab/doc/manual/Devices.html

任何人有任何想法,你如何使用vb.net或C#來讀取這些控制線的一個開關的狀態?

回答

1

銷更改事件處理程序可能會幫助

Dim WithEvents sp As New IO.Ports.SerialPort 
Private Sub sp_PinChanged(sender As Object, _ 
          e As System.IO.Ports.SerialPinChangedEventArgs) Handles sp.PinChanged 
    'look at e.EventType or check states 
    Select Case True 
     Case sp.CDHolding 
     Case sp.CtsHolding 
     Case sp.DsrHolding 
     Case sp.RtsEnable 
     Case e.EventType = IO.Ports.SerialPinChange.Ring 
    End Select 
End Sub 

這假定端口是開放的。

編輯:要檢測戒指,你必須使用e.EventType。

+0

謝謝。我最初的代碼是每隔一秒鐘用一個計時器檢查狀態,但我會試着看看它是如何在沒有計時器對象的情況下工作的。 – Mark 2011-05-11 12:21:34