GPIO_CONNECT_IO_PINS_PARAMETERS structure (gpioclx.h)

La structure GPIO_CONNECT_IO_PINS_PARAMETERS décrit une connexion logique à un ensemble de broches d’E/S à usage général (GPIO) et spécifie s’il faut configurer ces broches en tant qu’entrées ou sorties de données.

Syntaxe

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;

Membres

BankId

Identificateur de la banque qui contient les broches GPIO. Si M est le nombre de banques dans le contrôleur GPIO, BankId est un entier compris entre 0 et M et 1. L’extension d’infrastructure GPIO (GpioClx) a précédemment obtenu le nombre de banques dans le contrôleur à partir de la fonction de rappel d’événement CLIENT_QueryControllerBasicInformation . Pour plus d’informations, consultez Remarques dans CLIENT_CONTROLLER_BASIC_INFORMATION.

PinNumberTable

Pointeur vers un tableau de valeurs PIN_NUMBER. Chaque élément de tableau spécifie le nombre d’une broche GPIO à laquelle se connecter. Si N est le nombre de broches dans cette banque, les broches sont numérotées de 0 à N–1. Le nombre d’éléments dans ce tableau est spécifié par le membre PinCount .

PinCount

Nombre d’éléments dans le tableau PinNumberTable .

ConnectMode

Indique si les broches GPIO dans la nouvelle connexion doivent être configurées en tant qu’entrées ou en sorties. La valeur de ce paramètre est ConnectModeInput pour une connexion en lecture seule, ConnectModeOutput pour une connexion en écriture seule et (ConnectModeInput | ConnectModeOutput) pour une connexion en lecture/écriture. Pour plus d’informations, consultez GPIO_CONNECT_IO_PINS_MODE.

PullConfiguration

Indique si la broche GPIO est extraite vers le haut ou vers le bas. Ce membre est généralement défini sur l’une des constantes définies par le système suivantes :

  • GPIO_PIN_PULL_CONFIGURATION_PULLDEFAULT
  • GPIO_PIN_PULL_CONFIGURATION_PULLUP
  • GPIO_PIN_PULL_CONFIGURATION_PULLDOWN
  • GPIO_PIN_PULL_CONFIGURATION_PULLNONE
Si aucune de ces constantes ne décrit correctement la configuration de la broche, ce membre peut être défini sur une constante définie par le fournisseur dans la plage 128-255. Pour plus d’informations sur ces constantes, consultez GPIO_PIN_PULL_CONFIGURATION_XXX.

DebounceTimeout

Temps debounce en unités de 10 microsecondes. Par exemple, un temps debounce de 5,84 millisecondes est spécifié comme 584. Si un signal d’entrée est généré par un commutateur mécanique, le contact métallique dans le commutateur a tendance à rebondir pendant un bref moment après l’activation ou la désactivation du commutateur. Le temps debounce est la durée minimale pendant laquelle le niveau du signal d’entrée doit rester stable avant que le signal puisse être interprété comme un niveau élevé ou faible valide.

DriveStrength

Puissance d’entraînement de la broche GPIO en unités de 10 microampères. Par exemple, une puissance de lecteur de 1,21 milliampères est spécifiée sous la forme 121.

VendorData

Pointeur vers une mémoire tampon allouée à l’appelant qui contient des données spécifiques au fournisseur obtenues à partir du microprogramme ACPI pour la plateforme matérielle. Ces données sont copiées à partir du champ VendorData du descripteur de ressources GPIO qui décrit la connexion d’E/S de données entre le périphérique et un ensemble de broches GPIO sur le contrôleur GPIO. Ce membre est facultatif et est défini sur NULL si le microprogramme ne fournit pas de données spécifiques au fournisseur pour cette connexion.

VendorDataLength

Taille, en octets, de la mémoire tampon de données pointée par le membre VendorData . Si VendorData a la valeur NULL, VendorDataLength est défini sur zéro.

ConnectFlags

Ensemble d’indicateurs qui contrôlent la configuration des broches GPIO. Aucun indicateur n’est actuellement défini pour ce membre.

Remarques

Le paramètre ClientParameters de la routine de rappel d’événement CLIENT_ConnectIoPins est un pointeur vers une structure de GPIO_CONNECT_IO_PINS_PARAMETERS .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge à partir de Windows 8.
En-tête gpioclx.h

Voir aussi

CLIENT_CONTROLLER_BASIC_INFORMATION

CLIENT_ConnectIoPins

CLIENT_QueryControllerBasicInformation

GPIO_CONNECT_IO_PINS_MODE

GPIO_PIN_PULL_CONFIGURATION_XXX