estructura SERIAL_HANDFLOW (ntddser.h)
La estructura SERIAL_HANDFLOW especifica la configuración del protocolo de enlace y el control de flujo para un puerto serie.
Sintaxis
typedef struct _SERIAL_HANDFLOW {
ULONG ControlHandShake;
ULONG FlowReplace;
LONG XonLimit;
LONG XoffLimit;
} SERIAL_HANDFLOW, *PSERIAL_HANDFLOW;
Miembros
ControlHandShake
Máscara de bits que especifica las líneas de control que usa el puerto serie para el control de flujo. Este miembro se establece en cero o en el or bit a bit o en uno o varios de los siguientes marcadores.
Valor | Descripción |
---|---|
SERIAL_DTR_CONTROL | DTR (listo para el terminal de datos) está habilitado. |
SERIAL_DTR_HANDSHAKE | DTR se usa para el control de flujo de entrada. |
SERIAL_CTS_HANDSHAKE | CTS (claro para enviar) se usa para el control de flujo de salida. |
SERIAL_DSR_HANDSHAKE | DSR (conjunto de datos listo) se usa para el control de flujo de salida. |
SERIAL_DCD_HANDSHAKE | DCD (detección de portador de datos) se usa para el control de flujo de salida. |
SERIAL_DSR_SENSITIVITY | Omita los caracteres que llegan al puerto serie cuando la línea DSR está inactiva. |
SERIAL_ERROR_ABORT | Anule una operación de transmisión o recepción si se produce un error. |
SerCx2 admite la marca de SERIAL_CTS_HANDSHAKE y puede o no admitir las otras seis marcas definidas para este miembro, en función del controlador de serie y de las capacidades del hardware del controlador serie. SerCx solo admite las cuatro primeras marcas de la tabla anterior. Serial.sys admite todas las marcas de la tabla anterior.
FlowReplace
Máscara de bits que especifica el comportamiento del control de flujo. Este miembro se establece en cero o en el or bit a bit o en uno o varios de los siguientes marcadores.
Valor | Descripción |
---|---|
SERIAL_AUTO_TRANSMIT | Use XON/XOFF para el control de flujo de los datos transmitidos. |
SERIAL_AUTO_RECEIVE | Use XON/XOFF para el control de flujo de los datos recibidos. |
SERIAL_ERROR_CHAR | Inserte el carácter de error en los datos recibidos cuando se produzca un error. Para obtener más información, vea la descripción del miembro ErrorChar en SERIAL_CHARS. |
SERIAL_NULL_STRIPPING | Quita automáticamente caracteres NULL de los datos recibidos. |
SERIAL_BREAK_CHAR | Inserte el carácter de interrupción en los datos recibidos cuando se produzca una interrupción. Para obtener más información, vea la descripción del miembro BreakChar en SERIAL_CHARS. |
SERIAL_RTS_CONTROL | RTS (solicitud para enviar) está habilitado. |
SERIAL_RTS_HANDSHAKE | RTS se usa para el control de flujo de salida. |
SERIAL_XOFF_CONTINUE | Continúe transmitiendo después de enviar XOFF al dispositivo en el otro extremo de la línea. |
SerCx2 admite las marcas SERIAL_RTS_CONTROL y SERIAL_RTS_HANDSHAKE, pero normalmente no admite las otras seis marcas definidas para este miembro, dependiendo del controlador serie y de las funcionalidades del hardware del controlador serie. SerCx solo admite las marcas de SERIAL_RTS_CONTROL y SERIAL_RTS_HANDSHAKE. Serial.sys admite todas las marcas de la tabla anterior.
XonLimit
Límite XON. Cuando el número de caracteres del búfer de recepción interno está por debajo del límite XON, el controlador de controlador serie usa las señales de control de flujo para indicar al remitente que reanude el envío de caracteres.
XoffLimit
Límite XOFF. Cuando el número de caracteres del búfer de recepción interno alcanza el límite XOFF, el controlador de controlador serie usa las señales de control de flujo para indicar al remitente que deje de enviar caracteres.
Comentarios
Esta estructura la usan las solicitudes IOCTL_SERIAL_GET_HANDFLOW y IOCTL_SERIAL_SET_HANDFLOW .
Después de enviar un carácter XOFF (transmitir desactivado), el puerto serie deja de transmitirse inmediatamente, sin enviar más caracteres. Este comportamiento admite puertos serie que interpretan cualquier carácter que sigue a un XOFF como un XON implícito (transmitir).
SerCx2 y SerCx solo admiten subconjuntos de las marcas definidas para los miembros ControlHandShake y FlowControl . Una solicitud IOCTL_SERIAL_SET_HANDFLOW que especifica una marca no admitida se completa con STATUS_NOT_IMPLEMENTED.
Requisitos
Requisito | Valor |
---|---|
Header | ntddser.h |