SERIAL_STATUS 結構 (ntddser.h)
SERIAL_STATUS 結構包含有關串行埠的狀態資訊。
語法
typedef struct _SERIAL_STATUS {
ULONG Errors;
ULONG HoldReasons;
ULONG AmountInInQueue;
ULONG AmountInOutQueue;
BOOLEAN EofReceived;
BOOLEAN WaitForImmediate;
} SERIAL_STATUS, *PSERIAL_STATUS;
成員
Errors
一組旗標,表示輸入數據流中發生的接收錯誤。 這個成員設定為零或設定為下列一或多個旗標位的位 OR。
旗標名稱 | 意義 |
---|---|
SERIAL_ERROR_QUEUEOVERRUN | 序列控制器驅動程式的內部輸入緩衝區已由從輸入數據流接收的數據溢出。 輸入緩衝區已滿,或是在檔案) 字元結尾的 EOF (之後收到字元。 |
SERIAL_ERROR_OVERRUN | 硬體接收 FIFO 已由從輸入數據流接收的數據溢出。 |
SERIAL_ERROR_BREAK | 輸入行上發生中斷條件。 |
SERIAL_ERROR_PARITY | 在從輸入數據流接收的位元組中偵測到同位錯誤。 |
SERIAL_ERROR_FRAMING | 在從輸入數據流收到的位元組中偵測到框架錯誤。 |
在序列控制器驅動程式提供累積的SERIAL_ERROR_XXX 旗標以滿足 IOCTL_SERIAL_GET_COMMSTATUS 要求之後,驅動程式會將旗標重設為零。
HoldReasons
一組旗標,指出串行埠目前正在等候將位元組傳輸至輸出數據流的原因。 這個成員設定為零或設定為下列一或多個旗標位的位 OR。
旗標名稱 | 意義 |
---|---|
SERIAL_TX_WAITING_FOR_CTS | 等候 CTS (清除以傳送) 訊號。 |
SERIAL_TX_WAITING_FOR_DSR | 等候 DSR (數據集就緒) 訊號。 |
SERIAL_TX_WAITING_FOR_DCD | 等候 DCD (數據貨運公司偵測) 訊號。 |
SERIAL_TX_WAITING_FOR_XON | 等候) 訊號上的 XON (傳輸。 |
SERIAL_TX_WAITING_ON_BREAK | 傳送中斷 (間距值) 訊號。 |
SERIAL_TX_WAITING_XOFF_SENT | 傳送 XOFF (傳送) 訊號。 此訊號會標示從序列埠傳輸的結尾,然後等候該行另一端的裝置開始傳輸。 另一個裝置會以 XON 訊號的形式接收傳輸的 XOFF 訊號。 |
如果序列埠沒有理由停止傳輸位元組,HoldReasons 為零。
AmountInInQueue
從串行埠接收的數據位元組數目,目前可從輸入緩衝區讀取。
AmountInOutQueue
目前等候從輸出緩衝區寫入串行埠的傳輸數據位元組數目。
EofReceived
是否已收到 EOF (檔案結尾) 字元。 如果收到 EOF,則此成員為 TRUE 。 否則為 FALSE。 EOF 字元會標示輸入數據流的結尾。
WaitForImmediate
序列埠是否正在等候傳輸立即字元。 如果串行埠正在等候傳輸立即字元,則此成員為 TRUE 。 否則為 FALSE。 如果在 HoldReasons 成員中設定SERIAL_TX_WAITING_FOR_XON以外的任何旗標位,則立即字元的傳輸可能會延遲。 如需立即字元的詳細資訊,請參閱 IOCTL_SERIAL_IMMEDIATE_CHAR。
備註
IOCTL_SERIAL_GET_COMMSTATUS 要求會 使用此結構。
規格需求
需求 | 值 |
---|---|
標頭 | ntddser.h |