回覆列表
  • 1 # 使用者6602652349876

    RS232序列通訊介面硬體上有三個訊號輸入引腳:

    CTS:這個訊號源自對方(通常是DSE型別的裝置,如調變解調器),告訴你DSE已經同意你傳送資料

    DSR:這個訊號源自對方(通常是DSE型別的裝置,如調變解調器),告訴你DSE已經準備就緒,可以工作了

    CD:這個訊號源自對方(通常是DSE型別的裝置,如調變解調器),告訴你DSE已經偵測到載波(也就是資料調製波)

    在.net中,要讀取這三個訊號的狀態,有兩種方法:

    (1)直接讀取,程式碼如下

    //讀取CTS

    bool blnCTS = serialPort1.CtsHolding;

    //讀取DSR

    bool blnDSR = serialPort1.DsrHolding;

    //讀取CD

    bool blnCD = serialPort1.CDHolding;

    (2)在串列埠事件PinChanged處理程式中讀取

    private void serialPort1_PinChanged(object sender, System.IO.Ports.SerialPinChangedEventArgs e)

    {

    // 如果上面說的三個輸入訊號中,任意一個輸入發生變化

    // 都會引發PinChanged事件。因此,需要判斷究竟是哪個

    // 引腳訊號變化引發此事件

    bool b;

    switch (e.EventType)

    {

    case System.IO.Ports.SerialPinChange.CDChanged:

    b = serialPort1.CDHolding;

    break;

    case System.IO.Ports.SerialPinChange.CtsChanged:

    b = serialPort1.CtsHolding;

    break;

    case System.IO.Ports.SerialPinChange.DsrChanged:

    b = serialPort1.DsrHolding;

    break;

    default:

    break;

    }

    }

  • 中秋節和大豐收的關聯?
  • 去見喜歡的人是一種什麼樣的心情?