CLIENT_CONTROLLER_BASIC_INFORMATION structure (gpioclx.h)
La structure CLIENT_CONTROLLER_BASIC_INFORMATION contient des attributs matériels de contrôleur d’E/S (GPIO) à usage général et des informations de configuration.
Syntaxe
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;
Membres
Version
Numéro de version de cette structure. Définissez ce membre sur GPIO_CONTROLLER_BASIC_INFORMATION_VERSION, qui est défini dans le fichier d’en-tête Gpioclx.h.
Size
Taille, en octets, de cette structure. Définissez ce membre sur sizeof(CLIENT_CONTROLLER_BASIC_INFORMATION).
TotalPins
Nombre de broches sur le contrôleur GPIO. Si les broches sont partitionnée en plusieurs banques, ce membre spécifie le nombre total de broches sur toutes les banques dans le contrôleur GPIO.
NumberOfPinsPerBank
Nombre de broches GPIO pour chaque banque. Le nombre maximal de broches pour chaque banque est de 64. Les broches du contrôleur GPIO sont partitionnés en une ou plusieurs banques. Chaque banque contient le nombre de broches spécifié par ce paramètre, à l’exception possible de la dernière banque. Pour plus d'informations, consultez la section Notes.
DeviceIdleTimeout
Intervalle de délai d’inactivité, en millisecondes, si le contrôleur GPIO prend en charge l’état d’alimentation D3. L’intervalle de délai d’attente est la durée minimale pendant laquelle un contrôleur GPIO reste dans l’état D0 une fois le contrôleur inactif. Une fois l’intervalle de délai d’expiration expiré, le gestionnaire d’alimentation peut demander que le contrôleur passe à l’état D3.
Flags
Ensemble d’indicateurs qui spécifient les attributs matériels du contrôleur GPIO. Ce membre peut être défini sur tous les zéros ou sur n’importe quelle combinaison ou au niveau du bit des bits d’indicateur suivants :
- MemoryMappedController
- ActiveInterruptsAutoClearOnRead
- FormatIoRequestsAsMasks
- DeviceIdlePowerMgmtSupported
- BankIdlePowerMgmtSupported
- EmulateDebouncing
- EmulateActiveBoth
Remarques
La fonction de rappel d’événement CLIENT_QueryControllerBasicInformation utilise une structure de CLIENT_CONTROLLER_BASIC_INFORMATION pour transmettre des informations spécifiques à l’appareil sur un contrôleur GPIO à l’extension d’infrastructure GPIO (GpioClx).
Un pilote de contrôleur GPIO peut partitionner les broches d’un périphérique de contrôleur GPIO en un certain nombre de banques. Si N est le nombre de banques dans le contrôleur, les banques sont numérotées de 0 à N–1. Tous, à l’exception de la dernière banque (c’est-à-dire le numéro de banque N à 1) doivent contenir le nombre de broches spécifié dans le membre NumberOfPinsPerBank . La dernière banque peut avoir n’importe quel nombre de broches allant de une à NumberOfPinsPerBank.
GpioClx détermine le nombre total de banques dans le contrôleur GPIO à partir des valeurs des membres TotalPins et NumberOfPinsPerBank . GpioClx utilise la formule entière suivante pour calculer le nombre total de banques :
TotalPinsNumberOfPinsPerBank NumberOfPinsPerBank En règle générale, une banque dans un appareil de contrôleur GPIO peut être activée et désactivée indépendamment des autres banques du même appareil. Ainsi, l’alimentation peut être économisée en désactivant une banque inactive.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Pris en charge à partir de Windows 8. |
En-tête | gpioclx.h |