Compartir a través de


SERIAL_STATUS estructura (ntddser.h)

La estructura SERIAL_STATUS contiene información de estado sobre el puerto serie.

Sintaxis

typedef struct _SERIAL_STATUS {
  ULONG   Errors;
  ULONG   HoldReasons;
  ULONG   AmountInInQueue;
  ULONG   AmountInOutQueue;
  BOOLEAN EofReceived;
  BOOLEAN WaitForImmediate;
} SERIAL_STATUS, *PSERIAL_STATUS;

Miembros

Errors

Conjunto de marcas para indicar los errores de recepción que se han producido en el flujo de entrada. Este miembro se establece en cero o en el or bit a bit de uno o varios de los siguientes bits de marca.

Nombre del marcador Significado
SERIAL_ERROR_QUEUEOVERRUN El búfer de entrada interno del controlador de serie se ha saturado por los datos recibidos del flujo de entrada. El búfer de entrada está lleno o se recibió un carácter después del carácter EOF (final del archivo).
SERIAL_ERROR_OVERRUN Los datos recibidos del flujo de entrada sobrecogió la recepción de hardware FIFO.
SERIAL_ERROR_BREAK Se produjo una condición de interrupción en la línea de entrada.
SERIAL_ERROR_PARITY Se detectó un error de paridad en un byte recibido del flujo de entrada.
SERIAL_ERROR_FRAMING Se detectó un error de trama en los bytes recibidos del flujo de entrada.
 

Después de que el controlador de controlador serie suministra las marcas de SERIAL_ERROR_XXX acumuladas para satisfacer una solicitud de IOCTL_SERIAL_GET_COMMSTATUS , el controlador restablece las marcas a cero.

HoldReasons

Un conjunto de marcas para indicar los motivos por los que el puerto serie está esperando actualmente transmitir bytes al flujo de salida. Este miembro se establece en cero o en el or bit a bit de uno o varios de los siguientes bits de marca.

Nombre del marcador Significado
SERIAL_TX_WAITING_FOR_CTS Esperando la señal cts (borrar para enviar).
SERIAL_TX_WAITING_FOR_DSR Esperando la señal de DSR (conjunto de datos listo).
SERIAL_TX_WAITING_FOR_DCD Esperando la señal de DCD (detección del operador de datos).
SERIAL_TX_WAITING_FOR_XON Esperando la señal XON (transmitir en).
SERIAL_TX_WAITING_ON_BREAK Envío de una señal de interrupción (valor de espaciado).
SERIAL_TX_WAITING_XOFF_SENT Se envió una señal XOFF (transmisión desactivada). Esta señal marca el final de la transmisión desde el puerto serie, que luego espera a que el dispositivo en el otro extremo de la línea empiece a transmitirse. El otro dispositivo recibe la señal XOFF transmitida como una señal XON.
 

HoldReasons es cero si el puerto serie no tiene ninguna razón para dejar de transmitir bytes.

AmountInInQueue

Número de bytes de datos recibidos del puerto serie que están disponibles actualmente para leerse desde el búfer de entrada.

AmountInOutQueue

Número de bytes de datos de transmisión que están esperando que se escriban desde el búfer de salida al puerto serie.

EofReceived

Indica si se ha recibido un carácter EOF (fin del archivo). Este miembro es TRUE si se ha recibido un EOF. De lo contrario, es FALSE. El carácter EOF marca el final del flujo de entrada.

WaitForImmediate

Indica si el puerto serie está esperando transmitir un carácter inmediato. Este miembro es TRUE si el puerto serie está esperando transmitir un carácter inmediato. De lo contrario, es FALSE. La transmisión de un carácter inmediato podría retrasarse si se establece algún bit de marca distinto de SERIAL_TX_WAITING_FOR_XON en el miembro HoldReasons . Para obtener más información sobre los caracteres inmediatos, vea IOCTL_SERIAL_IMMEDIATE_CHAR.

Comentarios

La solicitud de IOCTL_SERIAL_GET_COMMSTATUS usa esta estructura.

Requisitos

Requisito Valor
Header ntddser.h

Consulte también

IOCTL_SERIAL_GET_COMMSTATUS

IOCTL_SERIAL_IMMEDIATE_CHAR