다음을 통해 공유


SERIAL_HANDFLOW 구조체(ntddser.h)

SERIAL_HANDFLOW 구조체는 직렬 포트에 대한 핸드셰이크 및 흐름 제어 설정을 지정합니다.

구문

typedef struct _SERIAL_HANDFLOW {
  ULONG ControlHandShake;
  ULONG FlowReplace;
  LONG  XonLimit;
  LONG  XoffLimit;
} SERIAL_HANDFLOW, *PSERIAL_HANDFLOW;

멤버

ControlHandShake

직렬 포트가 흐름 제어에 사용하는 제어선을 지정하는 비트 마스크입니다. 이 멤버는 0으로 설정되거나 비트 OR 또는 다음 플래그 중 하나 이상으로 설정됩니다.

Description
SERIAL_DTR_CONTROL DTR(데이터 터미널 준비)을 사용할 수 있습니다.
SERIAL_DTR_HANDSHAKE DTR은 입력 흐름 제어에 사용됩니다.
SERIAL_CTS_HANDSHAKE CTS(전송 지우기)는 출력 흐름 제어에 사용됩니다.
SERIAL_DSR_HANDSHAKE DSR(데이터 세트 준비)은 출력 흐름 제어에 사용됩니다.
SERIAL_DCD_HANDSHAKE DCD(데이터 통신 사업자 검색)는 출력 흐름 제어에 사용됩니다.
SERIAL_DSR_SENSITIVITY DSR 줄이 비활성 상태일 때 직렬 포트에 도착하는 문자를 무시합니다.
SERIAL_ERROR_ABORT 오류가 발생하는 경우 전송 또는 수신 작업을 중단합니다.
 

SerCx2는 SERIAL_CTS_HANDSHAKE 플래그를 지원하며 직렬 컨트롤러 드라이버 및 직렬 컨트롤러 하드웨어의 기능에 따라 이 멤버에 대해 정의된 다른 6개 플래그를 지원하거나 지원하지 않을 수 있습니다. SerCx는 앞의 표에서 처음 네 개의 플래그만 지원합니다. Serial.sys 이전 표의 모든 플래그를 지원합니다.

FlowReplace

흐름 제어 동작을 지정하는 비트 마스크입니다. 이 멤버는 0으로 설정되거나 비트 OR 또는 다음 플래그 중 하나 이상으로 설정됩니다.

Description
SERIAL_AUTO_TRANSMIT 전송된 데이터의 흐름 제어에 XON/XOFF를 사용합니다.
SERIAL_AUTO_RECEIVE 수신된 데이터의 흐름 제어에 XON/XOFF를 사용합니다.
SERIAL_ERROR_CHAR 오류가 발생할 때 받은 데이터에 오류 문자를 삽입합니다. 자세한 내용은 SERIAL_CHARSErrorChar 멤버에 대한 설명을 참조하세요.
SERIAL_NULL_STRIPPING 수신된 데이터에서 null 문자를 자동으로 제거합니다.
SERIAL_BREAK_CHAR 중단이 발생할 때 수신된 데이터에 나누기 문자를 삽입합니다. 자세한 내용은 SERIAL_CHARSBreakChar 멤버에 대한 설명을 참조하세요.
SERIAL_RTS_CONTROL RTS(보내기 요청)가 사용하도록 설정됩니다.
SERIAL_RTS_HANDSHAKE RTS는 출력 흐름 제어에 사용됩니다.
SERIAL_XOFF_CONTINUE 줄의 다른 쪽 끝에 있는 디바이스로 XOFF를 보낸 후 계속 전송합니다.
 

SerCx2는 SERIAL_RTS_CONTROL 및 SERIAL_RTS_HANDSHAKE 플래그를 지원하지만 일반적으로 직렬 컨트롤러 드라이버 및 직렬 컨트롤러 하드웨어의 기능에 따라 이 멤버에 대해 정의된 다른 6개의 플래그를 지원하지 않습니다. SerCx는 SERIAL_RTS_CONTROL 및 SERIAL_RTS_HANDSHAKE 플래그만 지원합니다. Serial.sys 이전 표의 모든 플래그를 지원합니다.

XonLimit

XON 제한. 내부 수신 버퍼의 문자 수가 XON 제한보다 낮으면 직렬 컨트롤러 드라이버는 흐름 제어 신호를 사용하여 보낸 사람에게 문자 보내기를 다시 시작하도록 지시합니다.

XoffLimit

XOFF 제한. 내부 수신 버퍼의 문자 수가 XOFF 제한에 도달하면 직렬 컨트롤러 드라이버는 흐름 제어 신호를 사용하여 보낸 사람에게 문자 전송을 중지하도록 지시합니다.

설명

이 구조체는 IOCTL_SERIAL_GET_HANDFLOWIOCTL_SERIAL_SET_HANDFLOW 요청에 사용됩니다.

XOFF(전송 해제) 문자를 보낸 후 직렬 포트는 더 이상 문자를 보내지 않고 즉시 전송을 중지합니다. 이 동작은 XOFF를 따르는 모든 문자를 암시적 XON(전송 중)으로 해석하는 직렬 포트를 지원합니다.

SerCx2 및 SerCx는 ControlHandShakeFlowControl 멤버에 대해 정의된 플래그의 하위 집합만 지원합니다. 지원되지 않는 플래그를 지정하는 IOCTL_SERIAL_SET_HANDFLOW 요청은 STATUS_NOT_IMPLEMENTED 완료됩니다.

요구 사항

요구 사항
헤더 ntddser.h

추가 정보

IOCTL_SERIAL_GET_HANDFLOW

IOCTL_SERIAL_SET_HANDFLOW