structure SERIAL_HANDFLOW (ntddser.h)
La structure SERIAL_HANDFLOW spécifie les paramètres de contrôle de liaison et de flux pour un port série.
Syntaxe
typedef struct _SERIAL_HANDFLOW {
ULONG ControlHandShake;
ULONG FlowReplace;
LONG XonLimit;
LONG XoffLimit;
} SERIAL_HANDFLOW, *PSERIAL_HANDFLOW;
Membres
ControlHandShake
Masque de bits qui spécifie les lignes de contrôle que le port série utilise pour le contrôle de flux. Ce membre est défini sur zéro ou sur l’or au niveau du bit ou un ou plusieurs des indicateurs suivants.
Valeur | Description |
---|---|
SERIAL_DTR_CONTROL | Le DTR (terminal de données prêt) est activé. |
SERIAL_DTR_HANDSHAKE | DTR est utilisé pour le contrôle de flux d’entrée. |
SERIAL_CTS_HANDSHAKE | CTS (effacer l’envoi) est utilisé pour le contrôle de flux de sortie. |
SERIAL_DSR_HANDSHAKE | DSR (jeu de données prêt) est utilisé pour le contrôle de flux de sortie. |
SERIAL_DCD_HANDSHAKE | DCD (détection du transporteur de données) est utilisé pour le contrôle de flux de sortie. |
SERIAL_DSR_SENSITIVITY | Ignorez les caractères arrivant au port série lorsque la ligne DSR est inactive. |
SERIAL_ERROR_ABORT | Abandonner une opération de transmission ou de réception si une erreur se produit. |
SerCx2 prend en charge l’indicateur de SERIAL_CTS_HANDSHAKE et peut ou non prendre en charge les six autres indicateurs définis pour ce membre, en fonction du pilote du contrôleur série et des fonctionnalités du matériel du contrôleur série. SerCx prend uniquement en charge les quatre premiers indicateurs du tableau précédent. Serial.sys prend en charge tous les indicateurs du tableau précédent.
FlowReplace
Masque de bits qui spécifie le comportement du contrôle de flux. Ce membre est défini sur zéro ou sur l’or au niveau du bit ou un ou plusieurs des indicateurs suivants.
Valeur | Description |
---|---|
SERIAL_AUTO_TRANSMIT | Utilisez XON/XOFF pour le contrôle de flux des données transmises. |
SERIAL_AUTO_RECEIVE | Utilisez XON/XOFF pour le contrôle de flux des données reçues. |
SERIAL_ERROR_CHAR | Insérez le caractère d’erreur dans les données reçues lorsqu’une erreur se produit. Pour plus d’informations, consultez la description du membre ErrorChar dans SERIAL_CHARS. |
SERIAL_NULL_STRIPPING | Supprimez automatiquement les caractères Null des données reçues. |
SERIAL_BREAK_CHAR | Insérez le caractère d’arrêt dans les données reçues lorsqu’un arrêt se produit. Pour plus d’informations, consultez la description du membre BreakChar dans SERIAL_CHARS. |
SERIAL_RTS_CONTROL | RTS (demande d’envoi) est activé. |
SERIAL_RTS_HANDSHAKE | RTS est utilisé pour le contrôle de flux de sortie. |
SERIAL_XOFF_CONTINUE | Continuez à transmettre après l’envoi de XOFF à l’appareil à l’autre extrémité de la ligne. |
SerCx2 prend en charge les indicateurs de SERIAL_RTS_CONTROL et de SERIAL_RTS_HANDSHAKE, mais ne prend généralement pas en charge les six autres indicateurs définis pour ce membre, en fonction du pilote du contrôleur série et des fonctionnalités du matériel du contrôleur série. SerCx prend uniquement en charge les indicateurs SERIAL_RTS_CONTROL et SERIAL_RTS_HANDSHAKE. Serial.sys prend en charge tous les indicateurs du tableau précédent.
XonLimit
Limite XON. Lorsque le nombre de caractères dans la mémoire tampon de réception interne tombe en dessous de la limite XON, le pilote du contrôleur série utilise les signaux de contrôle de flux pour indiquer à l’expéditeur de reprendre l’envoi de caractères.
XoffLimit
Limite XOFF. Lorsque le nombre de caractères dans la mémoire tampon de réception interne atteint la limite XOFF, le pilote du contrôleur série utilise les signaux de contrôle de flux pour indiquer à l’expéditeur d’arrêter l’envoi de caractères.
Remarques
Cette structure est utilisée par les requêtes IOCTL_SERIAL_GET_HANDFLOW et IOCTL_SERIAL_SET_HANDFLOW.
Après avoir envoyé un caractère XOFF (transmettre hors), le port série cesse de transmettre immédiatement, sans envoyer plus de caractères. Ce comportement prend en charge les ports série qui interprètent n’importe quel caractère qui suit un XOFF comme un XON implicite (transmission activée).
SerCx2 et SerCx prennent uniquement en charge les sous-ensembles des indicateurs définis pour les membres ControlHandShake et FlowControl. Une requête IOCTL_SERIAL_SET_HANDFLOW qui spécifie un indicateur non pris en charge est terminée avec STATUS_NOT_IMPLEMENTED.
Exigences
Exigence | Valeur |
---|---|
d’en-tête | ntddser.h |