SERIAL_HANDFLOW結構 (ntddser.h)
SERIAL_HANDFLOW 結構會指定序列埠的交握和流程控制設定。
語法
typedef struct _SERIAL_HANDFLOW {
ULONG ControlHandShake;
ULONG FlowReplace;
LONG XonLimit;
LONG XoffLimit;
} SERIAL_HANDFLOW, *PSERIAL_HANDFLOW;
成員
ControlHandShake
位掩碼,指定序列埠用於流程控制的控制線。 這個成員設定為零或位 OR 或下列一或多個旗標。
價值 | 描述 |
---|---|
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旗標,而且可能或可能不支援為此成員定義的其他六個旗標,視序列控制器驅動程式和序列控制器硬體的功能而定。 SerCx 僅支援上表的前四個旗標。 Serial.sys 支援上表中的所有旗標。
FlowReplace
指定流程控制行為的位掩碼。 這個成員設定為零或位 OR 或下列一或多個旗標。
價值 | 描述 |
---|---|
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旗標,但通常不支援為此成員定義的其他六個旗標,視序列控制器驅動程式和序列控制器硬體的功能而定。 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。
要求
要求 | 價值 |
---|---|
標頭 | ntddser.h |