SERIAL_HANDFLOW struttura (ntddser.h)
La struttura SERIAL_HANDFLOW specifica le impostazioni di controllo handshake e flusso per una porta seriale.
Sintassi
typedef struct _SERIAL_HANDFLOW {
ULONG ControlHandShake;
ULONG FlowReplace;
LONG XonLimit;
LONG XoffLimit;
} SERIAL_HANDFLOW, *PSERIAL_HANDFLOW;
Members
ControlHandShake
Maschera di bit che specifica le righe di controllo usate dalla porta seriale per il controllo del flusso. Questo membro è impostato su zero o su bit-OR o uno o più dei flag seguenti.
Valore | Descrizione |
---|---|
SERIAL_DTR_CONTROL | DTR (pronto per il terminale dati) è abilitato. |
SERIAL_DTR_HANDSHAKE | DTR viene usato per il controllo del flusso di input. |
SERIAL_CTS_HANDSHAKE | CTS (chiaro da inviare) viene usato per il controllo del flusso di output. |
SERIAL_DSR_HANDSHAKE | DSR (pronto per il set di dati) viene usato per il controllo del flusso di output. |
SERIAL_DCD_HANDSHAKE | DCD (rilevamento del vettore dati) viene usato per il controllo del flusso di output. |
SERIAL_DSR_SENSITIVITY | Ignorare i caratteri che arrivano alla porta seriale quando la riga DSR è inattiva. |
SERIAL_ERROR_ABORT | Interrompere un'operazione di trasmissione o ricezione se si verifica un errore. |
SerCx2 supporta il flag SERIAL_CTS_HANDSHAKE e può o meno supportare gli altri sei flag definiti per questo membro, a seconda del driver del controller seriale e delle funzionalità dell'hardware del controller seriale. SerCx supporta solo i primi quattro flag nella tabella precedente. Serial.sys supporta tutti i flag nella tabella precedente.
FlowReplace
Maschera di bit che specifica il comportamento del controllo del flusso. Questo membro è impostato su zero o su bit-OR o uno o più dei flag seguenti.
Valore | Descrizione |
---|---|
SERIAL_AUTO_TRANSMIT | Usare XON/XOFF per il controllo del flusso dei dati trasmessi. |
SERIAL_AUTO_RECEIVE | Usare XON/XOFF per il controllo del flusso dei dati ricevuti. |
SERIAL_ERROR_CHAR | Inserire il carattere di errore nei dati ricevuti quando si verifica un errore. Per altre informazioni, vedere la descrizione del membro ErrorChar in SERIAL_CHARS. |
SERIAL_NULL_STRIPPING | Rimuovere automaticamente i caratteri Null dai dati ricevuti. |
SERIAL_BREAK_CHAR | Inserire il carattere di interruzione nei dati ricevuti quando si verifica un'interruzione. Per altre informazioni, vedere la descrizione del membro BreakChar in SERIAL_CHARS. |
SERIAL_RTS_CONTROL | RTS (richiesta di invio) è abilitato. |
SERIAL_RTS_HANDSHAKE | RTS viene usato per il controllo del flusso di output. |
SERIAL_XOFF_CONTINUE | Continuare a trasmettere dopo l'invio di XOFF al dispositivo nell'altra estremità della riga. |
SerCx2 supporta i flag di SERIAL_RTS_CONTROL e SERIAL_RTS_HANDSHAKE, ma in genere non supporta gli altri sei flag definiti per questo membro, a seconda del driver del controller seriale e delle funzionalità dell'hardware del controller seriale. SerCx supporta solo i flag di SERIAL_RTS_CONTROL e SERIAL_RTS_HANDSHAKE. Serial.sys supporta tutti i flag nella tabella precedente.
XonLimit
Limite XON. Quando il numero di caratteri nel buffer di ricezione interno scende al di sotto del limite XON, il driver del controller seriale usa i segnali di controllo del flusso per indicare al mittente di riprendere l'invio di caratteri.
XoffLimit
Limite XOFF. Quando il numero di caratteri nel buffer di ricezione interno raggiunge il limite XOFF, il driver del controller seriale usa i segnali di controllo del flusso per indicare al mittente di interrompere l'invio di caratteri.
Commenti
Questa struttura viene usata dalle richieste di IOCTL_SERIAL_GET_HANDFLOW e IOCTL_SERIAL_SET_HANDFLOW .
Dopo l'invio di un carattere XOFF (trasmissione off), la porta seriale smette di trasmettere immediatamente, senza inviare altri caratteri. Questo comportamento supporta porte seriali che interpretano qualsiasi carattere che segue un XOFF come XON implicito (trasmissione su).
SerCx2 e SerCx supportano solo subset dei flag definiti per i membri ControlHandShake e FlowControl . Una richiesta IOCTL_SERIAL_SET_HANDFLOW che specifica un flag non supportato viene completata con STATUS_NOT_IMPLEMENTED.
Requisiti
Requisito | Valore |
---|---|
Intestazione | ntddser.h |