структура CLIENT_CONTROLLER_BASIC_INFORMATION (gpioclx.h)

Структура CLIENT_CONTROLLER_BASIC_INFORMATION содержит атрибуты оборудования контроллера ввода-вывода общего назначения (GPIO) и сведения о конфигурации.

Синтаксис

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

Номер версии этой структуры. Задайте этому члену значение GPIO_CONTROLLER_BASIC_INFORMATION_VERSION, определенное в файле заголовка Gpioclx.h.

Size

Размер данной структуры (в байтах). Задайте для этого элемента значение sizeof(CLIENT_CONTROLLER_BASIC_INFORMATION).

TotalPins

Количество контактов на контроллере GPIO. Если контакты секционируются в несколько банков, этот член указывает общее количество контактов во всех банках в контроллере GPIO.

NumberOfPinsPerBank

Количество контактов GPIO для каждого банка. Максимальное число контактов для каждого банка составляет 64. Контакты на контроллере GPIO разделены на один или несколько банков. Каждый банк содержит количество контактов, указанных этим параметром, за исключением последнего банка. Дополнительные сведения см. в подразделе "Примечания".

DeviceIdleTimeout

Интервал времени ожидания простоя (в миллисекундах), если контроллер GPIO поддерживает состояние питания D3. Интервал времени ожидания — это минимальное количество времени, которое контроллер GPIO остается в состоянии D0 после того, как контроллер становится неактивным. После истечения времени ожидания диспетчер питания может запросить, чтобы контроллер переключился в состояние D3.

Flags

Набор флагов, указывающих аппаратные атрибуты контроллера GPIO. Для этого элемента можно задать все нули или любое побитовое сочетание битов флага ИЛИ:

  • MemoryMappedController
  • ActiveInterruptsAutoClearOnRead
  • FormatIoRequestsAsMasks
  • DeviceIdlePowerMgmtSupported
  • BankIdlePowerMgmtSupported
  • ЭмуляцияDebouncing
  • EmulateActiveBoth
Дополнительные сведения см. в разделе CONTROLLER_ATTRIBUTE_FLAGS.

Примечания

Функция обратного вызова событий CLIENT_QueryControllerBasicInformation использует структуру CLIENT_CONTROLLER_BASIC_INFORMATION для передачи сведений об контроллере GPIO в расширение платформы GPIO (GpioClx).

Драйвер контроллера GPIO может разделять контакты на устройстве контроллера GPIO на некоторое количество банков. Если N является числом банков в контролере, то банки нумеруются от 0 до N–1. Все, кроме последнего банка (т. е. номер банка N–1), должны содержать число контактов, указанных в члене NumberOfPinsPerBank . Последний банк может иметь любое количество контактов от одного до NumberOfPinsPerBank.

GpioClx определяет общее количество банков в контроллере GPIO из значений членов TotalPins и NumberOfPinsPerBank . GpioClx использует следующую целочисленную формулу для вычисления общего числа банков:

TotalPinsNumberOfPinsPerBank NumberOfPinsPerBank Обычно банк на устройстве контроллера GPIO можно включать и отключать независимо от других банков на том же устройстве. Таким образом, власть может быть сохранена, выключив банк, который простаивает.

Требования

   
Минимальная версия клиента Поддерживается начиная с Windows 8.
Заголовок gpioclx.h

См. также

CLIENT_QueryControllerBasicInformation

CONTROLLER_ATTRIBUTE_FLAGS