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_CHARSの ErrorChar メンバーの説明を参照してください。 |
SERIAL_NULL_STRIPPING | 受信したデータから null 文字を自動的に取り除きます。 |
SERIAL_BREAK_CHAR | 区切りが発生したときに、受信したデータに区切り文字を挿入します。 詳細については、SERIAL_CHARSの BreakChar メンバーの説明を参照してください。 |
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 |