estrutura CLIENT_CONTROLLER_BASIC_INFORMATION (gpioclx.h)
A estrutura CLIENT_CONTROLLER_BASIC_INFORMATION contém atributos de hardware do controlador gpio (E/S de uso geral) e informações de configuração.
Sintaxe
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;
Membros
Version
O número de versão dessa estrutura. Defina esse membro como GPIO_CONTROLLER_BASIC_INFORMATION_VERSION, que é definido no arquivo de cabeçalho Gpioclx.h.
Size
O tamanho, em bytes, dessa estrutura. Defina esse membro como sizeof(CLIENT_CONTROLLER_BASIC_INFORMATION).
TotalPins
O número de pinos no controlador GPIO. Se os pinos forem particionados em vários bancos, esse membro especificará a contagem total de pinos em todos os bancos no controlador GPIO.
NumberOfPinsPerBank
O número de pinos GPIO para cada banco. O número máximo de pinos para cada banco é 64. Os pinos no controlador GPIO são particionados em um ou mais bancos. Cada banco contém o número de pinos especificados por esse parâmetro, com a possível exceção do último banco. Para obter mais informações, consulte Comentários.
DeviceIdleTimeout
O intervalo de tempo limite ocioso, em milissegundos, se o controlador GPIO der suporte ao estado de energia D3. O intervalo de tempo limite é a quantidade mínima de tempo que um controlador GPIO permanece no estado D0 depois que o controlador fica ocioso. Depois que o intervalo de tempo limite expirar, o power manager poderá solicitar que o controlador mude para o estado D3.
Flags
Um conjunto de sinalizadores que especificam os atributos de hardware do controlador GPIO. Esse membro pode ser definido como todos os zeros ou para qualquer combinação bit a bit OR dos seguintes bits de sinalizador:
- MemoryMappedController
- ActiveInterruptsAutoClearOnRead
- FormatIoRequestsAsMasks
- DeviceIdlePowerMgmtSupported
- BankIdlePowerMgmtSupported
- EmulateDebouncing
- EmulateActiveBoth
Comentários
A função de retorno de chamada de evento CLIENT_QueryControllerBasicInformation usa uma estrutura CLIENT_CONTROLLER_BASIC_INFORMATION para passar informações específicas do dispositivo sobre um controlador GPIO para a extensão de estrutura GPIO (GpioClx).
Um driver de controlador GPIO pode particionar os pinos em um dispositivo controlador GPIO em alguns bancos. Se N for o número de bancos no controlador, os bancos serão numerados de 0 a N–1. Todos, exceto o último banco (ou seja, número de banco N–1) devem conter o número de pinos especificados no membro NumberOfPinsPerBank . O último banco pode ter qualquer número de pinos de um para NumberOfPinsPerBank.
GpioClx determina o número total de bancos no controlador GPIO dos valores dos membros TotalPins e NumberOfPinsPerBank . GpioClx usa a seguinte fórmula de inteiro para calcular o número total de bancos:
TotalPinsNumberOfPinsPerBank NumberOfPinsPerBank Normalmente, um banco em um dispositivo controlador GPIO pode ser ativado e desativado independentemente dos outros bancos no mesmo dispositivo. Assim, a energia pode ser salva desativando um banco ocioso.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte a partir do Windows 8. |
Cabeçalho | gpioclx.h |