SERIAL_STATUS-Struktur (ntddser.h)
Die SERIAL_STATUS-Struktur enthält status Informationen zum seriellen Port.
Syntax
typedef struct _SERIAL_STATUS {
ULONG Errors;
ULONG HoldReasons;
ULONG AmountInInQueue;
ULONG AmountInOutQueue;
BOOLEAN EofReceived;
BOOLEAN WaitForImmediate;
} SERIAL_STATUS, *PSERIAL_STATUS;
Member
Errors
Eine Reihe von Flags, um die Empfangensfehler anzugeben, die im Eingabestream aufgetreten sind. Dieses Element ist auf null oder auf das bitweise-OR eines oder mehrerer der folgenden Flagbits festgelegt.
Flagname | Bedeutung |
---|---|
SERIAL_ERROR_QUEUEOVERRUN | Der interne Eingabepuffer des seriellen Controllertreibers wurde durch Daten überlaufen, die vom Eingabestream empfangen wurden. Entweder ist der Eingabepuffer voll, oder ein Zeichen wurde nach dem EOF-Zeichen (Ende der Datei) empfangen. |
SERIAL_ERROR_OVERRUN | Die Hardware empfangene FIFO wurde durch Daten überlaufen, die vom Eingabestream empfangen wurden. |
SERIAL_ERROR_BREAK | In der Eingabezeile ist eine Unterbrechungsbedingung aufgetreten. |
SERIAL_ERROR_PARITY | Ein Paritätsfehler wurde in einem Byte erkannt, das vom Eingabedatenstrom empfangen wurde. |
SERIAL_ERROR_FRAMING | In den Bytes, die vom Eingabedatenstrom empfangen wurden, wurde ein Rahmenfehler erkannt. |
Nachdem der serielle Controllertreiber die akkumulierten SERIAL_ERROR_XXX-Flags bereitgestellt hat, um eine IOCTL_SERIAL_GET_COMMSTATUS Anforderung zu erfüllen, setzt der Treiber die Flags auf Null zurück.
HoldReasons
Eine Reihe von Flags, die die Gründe angeben, aus denen der serielle Port derzeit auf die Übertragung von Bytes an den Ausgabedatenstrom wartet. Dieses Element ist auf null oder auf das bitweise-OR eines oder mehrerer der folgenden Flagbits festgelegt.
Flagname | Bedeutung |
---|---|
SERIAL_TX_WAITING_FOR_CTS | Warten auf das CTS-Signal (clear to send) |
SERIAL_TX_WAITING_FOR_DSR | Warten auf das DSR-Signal (Dataset ready). |
SERIAL_TX_WAITING_FOR_DCD | Warten auf das DCD-Signal (Datenträgererkennung). |
SERIAL_TX_WAITING_FOR_XON | Warten auf das XON-Signal (Ein-Senden). |
SERIAL_TX_WAITING_ON_BREAK | Senden eines Umbruchsignals (Abstandswert). |
SERIAL_TX_WAITING_XOFF_SENT | Sendet ein XOFF-Signal (Transmission off). Dieses Signal markiert das Ende der Übertragung vom seriellen Port, der dann wartet, bis das Gerät am anderen Ende der Leitung mit der Übertragung beginnt. Das andere Gerät empfängt das übertragene XOFF-Signal als XON-Signal. |
HoldReasons ist 0, wenn der serielle Port keinen Grund hat, die Übertragung von Bytes zu beenden.
AmountInInQueue
Die Anzahl der Bytes von Daten, die vom seriellen Port empfangen werden und die derzeit aus dem Eingabepuffer gelesen werden können.
AmountInOutQueue
Die Anzahl der Bytes von Übertragungsdaten, die derzeit darauf warten, aus dem Ausgabepuffer in den seriellen Port geschrieben zu werden.
EofReceived
Gibt an, ob ein EOF-Zeichen (Ende der Datei) empfangen wurde. Dieser Member ist TRUE , wenn ein EOF empfangen wurde. Andernfalls ist es FALSE. Das EOF-Zeichen markiert das Ende des Eingabedatenstroms.
WaitForImmediate
Gibt an, ob der serielle Port auf die Übertragung eines unmittelbaren Zeichens wartet. Dieser Member ist TRUE , wenn der serielle Port auf die Übertragung eines unmittelbaren Zeichens wartet. Andernfalls ist es FALSE. Die Übertragung eines unmittelbaren Zeichens kann verzögert werden, wenn ein anderes Flagbit als SERIAL_TX_WAITING_FOR_XON im HoldReasons-Element festgelegt ist. Weitere Informationen zu Direktzeichen finden Sie unter IOCTL_SERIAL_IMMEDIATE_CHAR.
Hinweise
Diese Struktur wird von der IOCTL_SERIAL_GET_COMMSTATUS-Anforderung verwendet.
Anforderungen
Anforderung | Wert |
---|---|
Header | ntddser.h |