struttura SERIAL_STATUS (ntddser.h)
La struttura SERIAL_STATUS contiene informazioni sullo stato sulla porta seriale.
Sintassi
typedef struct _SERIAL_STATUS {
ULONG Errors;
ULONG HoldReasons;
ULONG AmountInInQueue;
ULONG AmountInOutQueue;
BOOLEAN EofReceived;
BOOLEAN WaitForImmediate;
} SERIAL_STATUS, *PSERIAL_STATUS;
Members
Errors
Set di flag per indicare gli errori di ricezione che si sono verificati nel flusso di input. Questo membro è impostato su zero o sull'OR bit per bit di uno o più dei bit di flag seguenti.
Nome contrassegno | Significato |
---|---|
SERIAL_ERROR_QUEUEOVERRUN | Il buffer di input interno del driver del controller seriale è stato sovraccaricato dai dati ricevuti dal flusso di input. Il buffer di input è pieno o un carattere è stato ricevuto dopo il carattere EOF (fine del file). |
SERIAL_ERROR_OVERRUN | L'hardware che riceve FIFO è stato sovraccaricato dai dati ricevuti dal flusso di input. |
SERIAL_ERROR_BREAK | Si è verificata una condizione di interruzione nella riga di input. |
SERIAL_ERROR_PARITY | È stato rilevato un errore di parità in un byte ricevuto dal flusso di input. |
SERIAL_ERROR_FRAMING | È stato rilevato un errore di frame nei byte ricevuti dal flusso di input. |
Dopo che il driver del controller seriale fornisce i flag SERIAL_ERROR_XXX accumulati per soddisfare una richiesta di IOCTL_SERIAL_GET_COMMSTATUS , il driver reimposta i flag su zero.
HoldReasons
Set di flag per indicare i motivi per cui la porta seriale è attualmente in attesa di trasmettere byte al flusso di output. Questo membro è impostato su zero o sull'OR bit per bit di uno o più dei bit di flag seguenti.
Nome contrassegno | Significato |
---|---|
SERIAL_TX_WAITING_FOR_CTS | In attesa del segnale CTS (chiaro da inviare). |
SERIAL_TX_WAITING_FOR_DSR | In attesa del segnale DSR (data set ready). |
SERIAL_TX_WAITING_FOR_DCD | In attesa del segnale DCD (rilevamento del gestore dati). |
SERIAL_TX_WAITING_FOR_XON | In attesa del segnale XON (trasmissione su). |
SERIAL_TX_WAITING_ON_BREAK | Invio di un segnale di interruzione (valore di spaziatura). |
SERIAL_TX_WAITING_XOFF_SENT | Inviato un segnale XOFF (trasmissione disattivata). Questo segnale contrassegna la fine della trasmissione dalla porta seriale, che attende quindi che il dispositivo sull'altra estremità della linea inizi la trasmissione. L'altro dispositivo riceve il segnale XOFF trasmesso come segnale XON. |
HoldReasons è zero se la porta seriale non ha alcun motivo per interrompere la trasmissione di byte.
AmountInInQueue
Numero di byte di dati ricevuti dalla porta seriale attualmente disponibili per la lettura dal buffer di input.
AmountInOutQueue
Numero di byte di trasmissione dei dati attualmente in attesa di essere scritti dal buffer di output alla porta seriale.
EofReceived
Indica se è stato ricevuto un carattere EOF (fine file). Questo membro è TRUE se è stato ricevuto un EOF. In caso contrario, è FALSE. Il carattere EOF contrassegna la fine del flusso di input.
WaitForImmediate
Indica se la porta seriale è in attesa di trasmettere un carattere immediato. Questo membro è TRUE se la porta seriale è in attesa di trasmettere un carattere immediato. In caso contrario, è FALSE. La trasmissione di un carattere immediato potrebbe essere ritardata se un bit di flag diverso da SERIAL_TX_WAITING_FOR_XON è impostato nel membro HoldReasons . Per altre informazioni sui caratteri immediati, vedere IOCTL_SERIAL_IMMEDIATE_CHAR.
Commenti
Questa struttura viene utilizzata dalla richiesta IOCTL_SERIAL_GET_COMMSTATUS .
Requisiti
Requisito | Valore |
---|---|
Intestazione | ntddser.h |