estrutura GPIO_CONNECT_IO_PINS_PARAMETERS (gpioclx.h)
A estrutura GPIO_CONNECT_IO_PINS_PARAMETERS descreve uma conexão lógica com um conjunto de pinos de E/S de uso geral (GPIO) e especifica se esses pinos devem ser configurados como entradas ou saídas de dados.
Sintaxe
typedef struct _GPIO_CONNECT_IO_PINS_PARAMETERS {
BANK_ID BankId;
PPIN_NUMBER PinNumberTable;
USHORT PinCount;
GPIO_CONNECT_IO_PINS_MODE ConnectMode;
UCHAR PullConfiguration;
USHORT DebounceTimeout;
USHORT DriveStrength;
PVOID VendorData;
ULONG VendorDataLength;
GPIO_CONNECT_IO_PINS_FLAGS ConnectFlags;
} GPIO_CONNECT_IO_PINS_PARAMETERS, *PGPIO_CONNECT_IO_PINS_PARAMETERS;
Membros
BankId
O identificador do banco que contém os pinos gpio. Se M for o número de bancos no controlador GPIO, BankId será um inteiro no intervalo de 0 a M-1. A gpioClx (extensão de estrutura gpio) obteve anteriormente o número de bancos no controlador da função de retorno de chamada de evento CLIENT_QueryControllerBasicInformation . Para obter mais informações, consulte Comentários em CLIENT_CONTROLLER_BASIC_INFORMATION.
PinNumberTable
Um ponteiro para uma matriz de valores PIN_NUMBER. Cada elemento de matriz especifica o número de um pino GPIO ao qual se conectar. Se N for o número de pinos neste banco, os pinos serão numerados de 0 a N–1. O número de elementos nessa matriz é especificado pelo membro PinCount .
PinCount
O número de elementos na matriz PinNumberTable .
ConnectMode
Se os pinos gpio na nova conexão devem ser configurados como entradas ou como saídas. O valor desse parâmetro é ConnectModeInput para uma conexão somente leitura, ConnectModeOutput para uma conexão somente gravação e (ConnectModeInput | ConnectModeOutput) para uma conexão de leitura/gravação. Para obter mais informações, consulte GPIO_CONNECT_IO_PINS_MODE.
PullConfiguration
Se o pino gpio é puxado para cima ou puxado para baixo. Esse membro normalmente é definido como uma das seguintes constantes definidas pelo sistema:
- GPIO_PIN_PULL_CONFIGURATION_PULLDEFAULT
- GPIO_PIN_PULL_CONFIGURATION_PULLUP
- GPIO_PIN_PULL_CONFIGURATION_PULLDOWN
- GPIO_PIN_PULL_CONFIGURATION_PULLNONE
DebounceTimeout
O tempo de debounce em unidades de 10 microssegundos. Por exemplo, um tempo de debounce de 5,84 milissegundos é especificado como 584. Se um sinal de entrada for gerado por um comutador mecânico, o contato de metal no comutador tende a saltar por um breve tempo após a ativação ou desativação do comutador. O tempo de debounce é o tempo mínimo em que o nível do sinal de entrada deve permanecer estável antes que o sinal possa ser interpretado como um nível alto ou baixo válido.
DriveStrength
A força da unidade do pino gpio em unidades de 10 microamperes. Por exemplo, uma força de unidade de 1,21 miliamperes é especificada como 121.
VendorData
Um ponteiro para um buffer alocado pelo chamador que contém dados específicos do fornecedor obtidos do firmware ACPI para a plataforma de hardware. Esses dados são copiados do campo VendorData do descritor de recursos gpio que descreve a conexão de E/S de dados entre o dispositivo periférico e um conjunto de pinos GPIO no controlador GPIO. Esse membro é opcional e será definido como NULL se o firmware não fornecer dados específicos do fornecedor para essa conexão.
VendorDataLength
O tamanho, em bytes, do buffer de dados apontado pelo membro VendorData . Se VendorData for NULL, VendorDataLength será definido como zero.
ConnectFlags
Um conjunto de sinalizadores que controlam a configuração dos pinos gpio. Nenhum sinalizador está definido no momento para esse membro.
Comentários
O parâmetro ClientParameters para a rotina de retorno de chamada de evento CLIENT_ConnectIoPins é um ponteiro para uma estrutura GPIO_CONNECT_IO_PINS_PARAMETERS .
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte a partir do Windows 8. |
Cabeçalho | gpioclx.h |
Confira também
CLIENT_CONTROLLER_BASIC_INFORMATION