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 |