CLIENT_CONTROLLER_BASIC_INFORMATION 구조체(gpioclx.h)

CLIENT_CONTROLLER_BASIC_INFORMATION 구조에는 GPIO(범용 I/O) 컨트롤러 하드웨어 특성 및 구성 정보가 포함됩니다.

구문

typedef struct _CLIENT_CONTROLLER_BASIC_INFORMATION {
  USHORT                     Version;
  USHORT                     Size;
  USHORT                     TotalPins;
  UCHAR                      NumberOfPinsPerBank;
  ULONG                      DeviceIdleTimeout;
  CONTROLLER_ATTRIBUTE_FLAGS Flags;
} CLIENT_CONTROLLER_BASIC_INFORMATION, *PCLIENT_CONTROLLER_BASIC_INFORMATION;

멤버

Version

이 구조체의 버전 번호입니다. 이 멤버를 gpioclx.h 헤더 파일에 정의된 GPIO_CONTROLLER_BASIC_INFORMATION_VERSION 설정합니다.

Size

이 구조체의 크기(바이트)입니다. 이 멤버를 sizeof(CLIENT_CONTROLLER_BASIC_INFORMATION)로 설정합니다.

TotalPins

GPIO 컨트롤러의 핀 수입니다. 핀이 여러 은행으로 분할되는 경우 이 멤버는 GPIO 컨트롤러의 모든 은행에서 총 핀 수를 지정합니다.

NumberOfPinsPerBank

각 은행의 GPIO 핀 수입니다. 각 은행의 최대 핀 수는 64개입니다. GPIO 컨트롤러의 핀은 하나 이상의 은행으로 분할됩니다. 각 은행에는 마지막 뱅크를 제외하고 이 매개 변수에 지정된 핀 수가 포함됩니다. 자세한 내용은 설명 부분을 참조하세요.

DeviceIdleTimeout

GPIO 컨트롤러가 D3 전원 상태를 지원하는 경우 유휴 시간 제한 간격(밀리초)입니다. 제한 시간 간격은 컨트롤러가 유휴 상태가 된 후 GPIO 컨트롤러가 D0 상태로 유지되는 최소 시간입니다. 제한 시간 간격이 만료되면 전원 관리자는 컨트롤러가 D3 상태로 전환하도록 요청할 수 있습니다.

Flags

GPIO 컨트롤러의 하드웨어 특성을 지정하는 플래그 집합입니다. 이 멤버는 모든 0 또는 다음 플래그 비트의 비트 OR 조합으로 설정할 수 있습니다.

  • MemoryMappedController
  • ActiveInterruptsAutoClearOnRead
  • FormatIoRequestsAsMasks
  • DeviceIdlePowerMgmtSupported
  • BankIdlePowerMgmtSupported
  • EmulateDebouncing
  • EmulateActiveBoth
자세한 내용은 CONTROLLER_ATTRIBUTE_FLAGS 참조하세요.

설명

CLIENT_QueryControllerBasicInformation 이벤트 콜백 함수는 CLIENT_CONTROLLER_BASIC_INFORMATION 구조를 사용하여 GPIO 컨트롤러에 대한 디바이스별 정보를 GPIO 프레임워크 확장(GpioClx)에 전달합니다.

GPIO 컨트롤러 드라이버는 GPIO 컨트롤러 디바이스의 핀을 일부 은행으로 분할할 수 있습니다. N이 컨트롤러의 은행 수인 경우 은행은 0~N-1로 번호가 매겨집니다. 마지막 은행(즉, 은행 번호 N-1)을 제외한 모든 은행에 는 NumberOfPinsPerBank 멤버에 지정된 핀 수가 포함되어야 합니다. 마지막 은행은 NumberOfPinsPerBank에 대한 핀 수를 가질 수 있습니다.

GpioClx는 TotalPins 및NumberOfPinsPerBank 멤버의 값에서 GPIO 컨트롤러의 총 은행 수를 결정합니다. GpioClx는 다음 정수 수식을 사용하여 총 은행 수를 계산합니다.

TotalPinsNumberOfPinsPerBank NumberOfPinsPerBank 일반적으로 GPIO 컨트롤러 디바이스의 은행은 동일한 디바이스의 다른 은행과 독립적으로 켜고 끌 수 있습니다. 따라서 유휴 상태인 은행을 끄면 전력을 절약할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 8 부터 지원합니다.
머리글 gpioclx.h

추가 정보

CLIENT_QueryControllerBasicInformation

CONTROLLER_ATTRIBUTE_FLAGS