SERIAL_HANDFLOW 構造体 (ntddser.h)

SERIAL_HANDFLOW構造体は、シリアル ポートのハンドシェイクとフロー制御の設定を指定します。

構文

typedef struct _SERIAL_HANDFLOW {
  ULONG ControlHandShake;
  ULONG FlowReplace;
  LONG  XonLimit;
  LONG  XoffLimit;
} SERIAL_HANDFLOW, *PSERIAL_HANDFLOW;

メンバー

ControlHandShake

シリアル ポートがフロー制御に使用する制御行を指定するビットマスク。 このメンバーは、0 またはビットごとの OR または次の 1 つ以上のフラグに設定されます。

説明
SERIAL_DTR_CONTROL DTR (データ ターミナル対応) が有効になっています。
SERIAL_DTR_HANDSHAKE DTR は入力フロー制御に使用されます。
SERIAL_CTS_HANDSHAKE CTS (送信するクリア) は、出力フロー制御に使用されます。
SERIAL_DSR_HANDSHAKE DSR (データ・セット準備完了) は、出力フロー制御に使用されます。
SERIAL_DCD_HANDSHAKE DCD (データ キャリア検出) は、出力フロー制御に使用されます。
SERIAL_DSR_SENSITIVITY DSR 行が非アクティブな場合にシリアル ポートに到着する文字を無視します。
SERIAL_ERROR_ABORT エラーが発生した場合は、送信または受信操作を中止します。
 

SerCx2 は、SERIAL_CTS_HANDSHAKE フラグをサポートしており、シリアル コントローラー ドライバーとシリアル コントローラー ハードウェアの機能に応じて、このメンバーに対して定義されている他の 6 つのフラグをサポートする場合とサポートしない場合があります。 SerCx では、前の表の最初の 4 つのフラグのみがサポートされています。 Serial.sys は、前の表のすべてのフラグをサポートしています。

FlowReplace

フロー制御の動作を指定するビットマスク。 このメンバーは、0 またはビットごとの OR または次の 1 つ以上のフラグに設定されます。

説明
SERIAL_AUTO_TRANSMIT 送信データのフロー制御には XON/XOFF を使用します。
SERIAL_AUTO_RECEIVE 受信データのフロー制御には XON/XOFF を使用します。
SERIAL_ERROR_CHAR エラーが発生したときに、受信したデータにエラー文字を挿入します。 詳細については、SERIAL_CHARSErrorChar メンバーの説明を参照してください。
SERIAL_NULL_STRIPPING 受信したデータから null 文字を自動的に取り除きます。
SERIAL_BREAK_CHAR 区切りが発生したときに、受信したデータに区切り文字を挿入します。 詳細については、SERIAL_CHARSBreakChar メンバーの説明を参照してください。
SERIAL_RTS_CONTROL RTS (送信要求) が有効になっています。
SERIAL_RTS_HANDSHAKE RTS は出力フロー制御に使用されます。
SERIAL_XOFF_CONTINUE XOFF を回線のもう一方の端のデバイスに送信した後、引き続き送信します。
 

SerCx2 では、SERIAL_RTS_CONTROLフラグとSERIAL_RTS_HANDSHAKE フラグがサポートされていますが、通常、シリアル コントローラー ドライバーとシリアル コントローラー ハードウェアの機能によっては、このメンバーに対して定義されている他の 6 つのフラグはサポートされません。 SerCx では、SERIAL_RTS_CONTROLフラグとSERIAL_RTS_HANDSHAKE フラグのみがサポートされます。 Serial.sys は、前の表のすべてのフラグをサポートしています。

XonLimit

XON の制限。 内部受信バッファー内の文字数が XON 制限を下回ると、シリアル コントローラー ドライバーはフロー制御信号を使用して、送信側に送信文字の送信を再開するように指示します。

XoffLimit

XOFF の制限。 内部受信バッファー内の文字数が XOFF 制限に達すると、シリアル コントローラー ドライバーはフロー制御信号を使用して、送信者に文字の送信を停止するように指示します。

注釈

この構造体は、 IOCTL_SERIAL_GET_HANDFLOW および IOCTL_SERIAL_SET_HANDFLOW 要求によって使用されます。

XOFF (送信オフ) 文字を送信すると、シリアル ポートはそれ以上の文字を送信することなく、すぐに送信を停止します。 この動作では、XOFF に続く文字を暗黙的な XON (送信オン) として解釈するシリアル ポートがサポートされます。

SerCx2 および SerCx では、 ControlHandShake メンバーと FlowControl メンバーに対して定義されているフラグのサブセットのみがサポートされます。 サポートされていないフラグを指定する IOCTL_SERIAL_SET_HANDFLOW 要求は、STATUS_NOT_IMPLEMENTEDで完了します。

要件

要件
Header ntddser.h

こちらもご覧ください

IOCTL_SERIAL_GET_HANDFLOW

IOCTL_SERIAL_SET_HANDFLOW