structure GPIO_CONNECT_IO_PINS_PARAMETERS (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 de données ou sorties.
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-1. L’extension de framework 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 de cette banque, les broches sont numérotées de 0 à N-1. Le nombre d’éléments de 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 tant que 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 ou extraite 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
DebounceTimeout
Temps de débounce en unités de 10 microsecondes. Par exemple, une durée de débounce de 5,84 millisecondes est spécifiée comme étant 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 bas valide.
DriveStrength
Puissance du lecteur de la broche GPIO en unités de 10 microampères. Par exemple, une force de lecteur de 1,21 milliamperes est spécifiée comme 121.
VendorData
Pointeur vers une mémoire tampon allouée par 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 ressource GPIO qui décrit la connexion d’E/S de données entre l’appareil périphérique et un ensemble de broches GPIO sur le contrôleur GPIO. Ce membre est facultatif et a la valeur 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 a la valeur 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 à la routine de rappel d’événement CLIENT_ConnectIoPins est un pointeur vers une structure GPIO_CONNECT_IO_PINS_PARAMETERS.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Prise en charge à partir de Windows 8. |
d’en-tête | gpioclx.h |
Voir aussi
CLIENT_CONTROLLER_BASIC_INFORMATION