Compartir a través de


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

Consulte también

IOCTL_SERIAL_GET_HANDFLOW

IOCTL_SERIAL_SET_HANDFLOW