SERIAL_STATUS Struktur (ntddser.h)
Die SERIAL_STATUS-Struktur enthält Statusinformationen zum seriellen Port.
Syntax
typedef struct _SERIAL_STATUS {
ULONG Errors;
ULONG HoldReasons;
ULONG AmountInInQueue;
ULONG AmountInOutQueue;
BOOLEAN EofReceived;
BOOLEAN WaitForImmediate;
} SERIAL_STATUS, *PSERIAL_STATUS;
Angehörige
Errors
Eine Reihe von Flags, um die Empfangenfehler anzugeben, die im Eingabedatenstrom aufgetreten sind. Dieses Element ist auf Null oder auf das bitweise ODER eines oder mehrerer der folgenden Flagbits festgelegt.
Flagname | Bedeutung |
---|---|
SERIAL_ERROR_QUEUEOVERRUN | Der interne Eingabepuffer des seriellen Controllertreibers wurde von daten überholt, die vom Eingabedatenstrom empfangen wurden. Der Eingabepuffer ist voll oder ein Zeichen wurde nach dem EOF-Zeichen (Ende der Datei) empfangen. |
SERIAL_ERROR_OVERRUN | Die FIFO-Hardware wurde von Daten überlaufen, die vom Eingabedatenstrom 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 | Ein Rahmenfehler wurde in den Bytes erkannt, die vom Eingabedatenstrom empfangen wurden. |
Nachdem der serielle Controllertreiber die angesammelten 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, um die Gründe anzugeben, warum der serielle Port derzeit auf die Übertragung von Bytes an den Ausgabedatenstrom wartet. Dieses Element ist auf Null oder auf das bitweise ODER eines oder mehrerer der folgenden Flagbits festgelegt.
Flagname | Bedeutung |
---|---|
SERIAL_TX_WAITING_FOR_CTS | Warten auf das CTS(clear to send)-Signal. |
SERIAL_TX_WAITING_FOR_DSR | Warten auf das DsR-Signal (Datensatz bereit). |
SERIAL_TX_WAITING_FOR_DCD | Warten auf das DCD-Signal (Netzbetreiber erkennen). |
SERIAL_TX_WAITING_FOR_XON | Warten auf das XON-Signal (Sendesignal). |
SERIAL_TX_WAITING_ON_BREAK | Senden eines Unterbrechungssignals (Abstandswert). |
SERIAL_TX_WAITING_XOFF_SENT | Ein XOFF-Signal (Sendesignal) wurde gesendet. Dieses Signal markiert das Ende der Übertragung vom seriellen Anschluss, der dann auf das Gerät am anderen Ende der Leitung wartet, um mit der Übertragung zu beginnen. Das andere Gerät empfängt das übertragene XOFF-Signal als XON-Signal. |
HoldReasons null ist, wenn der serielle Port keinen Grund zum Beenden der Übertragung von Bytes hat.
AmountInInQueue
Die Anzahl der Vom seriellen Port empfangenen Daten, die zurzeit aus dem Eingabepuffer gelesen werden können.
AmountInOutQueue
Die Anzahl der Bytes der Übertragungsdaten, die derzeit vom Ausgabepuffer in den seriellen Port geschrieben werden.
EofReceived
Gibt an, ob ein EOF-Zeichen (Ende der Datei) empfangen wurde. Dieses Element 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 das Senden eines unmittelbaren Zeichens wartet. Dieses Element ist TRUE, wenn der serielle Anschluss darauf wartet, ein sofortiges Zeichen zu übertragen. 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-Element festgelegt ist. Weitere Informationen zu Direktzeichen finden Sie unter IOCTL_SERIAL_IMMEDIATE_CHAR.
Bemerkungen
Diese Struktur wird von der IOCTL_SERIAL_GET_COMMSTATUS Anforderung verwendet.
Anforderungen
Anforderung | Wert |
---|---|
Header- | ntddser.h |