Compartilhar via


estrutura SERIAL_STATUS (ntddser.h)

A estrutura SERIAL_STATUS contém status informações sobre a porta serial.

Sintaxe

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

Membros

Errors

Um conjunto de sinalizadores para indicar os erros de recebimento que ocorreram no fluxo de entrada. Esse membro é definido como zero ou como OR bit a bit de um ou mais dos bits de sinalizador a seguir.

Nome do sinalizador Significado
SERIAL_ERROR_QUEUEOVERRUN O buffer de entrada interno do driver do controlador serial foi invadido por dados recebidos do fluxo de entrada. O buffer de entrada está cheio ou um caractere foi recebido após o caractere EOF (fim do arquivo).
SERIAL_ERROR_OVERRUN O FIFO de recebimento de hardware foi invadido por dados recebidos do fluxo de entrada.
SERIAL_ERROR_BREAK Ocorreu uma condição de interrupção na linha de entrada.
SERIAL_ERROR_PARITY Um erro de paridade foi detectado em um byte recebido do fluxo de entrada.
SERIAL_ERROR_FRAMING Um erro de enquadramento foi detectado nos bytes recebidos do fluxo de entrada.
 

Depois que o driver do controlador serial fornece os sinalizadores SERIAL_ERROR_XXX acumulados para atender a uma solicitação de IOCTL_SERIAL_GET_COMMSTATUS , o driver redefine os sinalizadores como zero.

HoldReasons

Um conjunto de sinalizadores para indicar os motivos pelos quais a porta serial está aguardando para transmitir bytes para o fluxo de saída. Esse membro é definido como zero ou como OR bit a bit de um ou mais dos bits de sinalizador a seguir.

Nome do sinalizador Significado
SERIAL_TX_WAITING_FOR_CTS Aguardando o sinal CTS (limpar para enviar).
SERIAL_TX_WAITING_FOR_DSR Aguardando o sinal DSR (conjunto de dados pronto).
SERIAL_TX_WAITING_FOR_DCD Aguardando o sinal DCD (detecção da operadora de dados).
SERIAL_TX_WAITING_FOR_XON Aguardando o sinal XON (transmitir).
SERIAL_TX_WAITING_ON_BREAK Enviando um sinal de interrupção (valor de espaçamento).
SERIAL_TX_WAITING_XOFF_SENT Enviou um sinal XOFF (transmissão desativada). Esse sinal marca o fim da transmissão da porta serial, que aguarda o dispositivo na outra extremidade da linha iniciar a transmissão. O outro dispositivo recebe o sinal XOFF transmitido como um sinal XON.
 

HoldReasons será zero se a porta serial não tiver motivo para interromper a transmissão de bytes.

AmountInInQueue

O número de bytes de dados recebidos da porta serial que estão atualmente disponíveis para serem lidos do buffer de entrada.

AmountInOutQueue

O número de bytes de dados de transmissão que estão atualmente esperando para serem gravados do buffer de saída para a porta serial.

EofReceived

Se um caractere EOF (fim do arquivo) foi recebido. Esse membro será TRUE se um EOF tiver sido recebido. Caso contrário, será FALSE. O caractere EOF marca o final do fluxo de entrada.

WaitForImmediate

Se a porta serial está aguardando para transmitir um caractere imediato. Esse membro será TRUE se a porta serial estiver aguardando para transmitir um caractere imediato. Caso contrário, será FALSE. A transmissão de um caractere imediato poderá ser atrasada se qualquer bit de sinalizador diferente de SERIAL_TX_WAITING_FOR_XON estiver definido no membro HoldReasons . Para obter mais informações sobre caracteres imediatos, consulte IOCTL_SERIAL_IMMEDIATE_CHAR.

Comentários

Essa estrutura é usada pela solicitação IOCTL_SERIAL_GET_COMMSTATUS .

Requisitos

Requisito Valor
Cabeçalho ntddser.h

Confira também

IOCTL_SERIAL_GET_COMMSTATUS

IOCTL_SERIAL_IMMEDIATE_CHAR