Поделиться через


структура 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
  • 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 определяет общее количество банков в контроллере GPIO из значений TotalPins и NumberOfPinsPerBank членов. GpioClx использует следующую целочисленную формулу для вычисления общего числа банков:

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

Требования

Требование Ценность
минимальные поддерживаемые клиентские Поддерживается начиная с Windows 8.
заголовка gpioclx.h

См. также

CLIENT_QueryControllerBasicInformation

CONTROLLER_ATTRIBUTE_FLAGS