CLIENT_CONTROLLER_BASIC_INFORMATION-Struktur (gpioclx.h)
Die CLIENT_CONTROLLER_BASIC_INFORMATION-Struktur enthält GPIO-Hardwareattribute (General Purpose E/O) und Konfigurationsinformationen.
Syntax
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;
Member
Version
Die Versionsnummer dieser Struktur. Legen Sie diesen Member auf GPIO_CONTROLLER_BASIC_INFORMATION_VERSION fest, der in der Gpioclx.h-Headerdatei definiert ist.
Size
Die Größe (in Bytes) dieser Struktur. Legen Sie diesen Member auf sizeof(CLIENT_CONTROLLER_BASIC_INFORMATION) fest.
TotalPins
Die Anzahl der Pins auf dem GPIO-Controller. Wenn die Pins in mehrere Banken partitioniert sind, gibt dieses Element die Gesamtanzahl der Pins für alle Banken im GPIO-Controller an.
NumberOfPinsPerBank
Die Anzahl der GPIO-Pins für jede Bank. Die maximale Anzahl von Pins für jede Bank beträgt 64. Die Pins auf dem GPIO-Controller werden in eine oder mehrere Banken partitioniert. Jede Bank enthält die Anzahl von Pins, die durch diesen Parameter angegeben werden, mit der möglichen Ausnahme der letzten Bank. Weitere Informationen finden Sie in den Hinweisen.
DeviceIdleTimeout
Das Leerlauftimeoutintervall in Millisekunden, wenn der GPIO-Controller den D3-Energiezustand unterstützt. Das Timeoutintervall ist die Mindestdauer, die ein GPIO-Controller im D0-Zustand verbleibt, nachdem der Controller in den Leerlauf wechselt. Nach Ablauf des Timeoutintervalls fordert der Power Manager möglicherweise an, dass der Controller in den D3-Zustand wechselt.
Flags
Ein Satz von Flags, die die Hardwareattribute des GPIO-Controllers angeben. Dieser Member kann auf alle Nullen oder eine beliebige bitweise OR-Kombination der folgenden Flagbits festgelegt werden:
- MemoryMappedController
- ActiveInterruptsAutoClearOnRead
- FormatIoRequestsAsMasks
- DeviceIdlePowerMgmtSupported
- BankIdlePowerMgmtSupported
- EmulateDebouncing
- EmulateActiveBoth
Hinweise
Die CLIENT_QueryControllerBasicInformation Ereignisrückruffunktion verwendet eine CLIENT_CONTROLLER_BASIC_INFORMATION-Struktur , um gerätespezifische Informationen zu einem GPIO-Controller an die GPIO-Frameworkerweiterung (GpioClx) zu übergeben.
Ein GPIO-Controllertreiber kann die Pins in einem GPIO-Controllergerät in eine Reihe von Banken partitionieren. Wenn N die Anzahl der Banken im Controller ist, werden die Banken zwischen 0 und N–1 nummeriert. Alle mit Ausnahme der letzten Bank (d. h. die Banknummer N–1) müssen die Anzahl der Pins enthalten, die im NumberOfPinsPerBank-Mitglied angegeben ist. Die letzte Bank kann über eine beliebige Anzahl von Pins von 1 bis NumberOfPinsPerBank verfügen.
GpioClx bestimmt die Gesamtzahl der Banken im GPIO-Controller aus den Werten der Mitglieder TotalPins und NumberOfPinsPerBank . GpioClx verwendet die folgende ganzzahlige Formel, um die Gesamtzahl der Banken zu berechnen:
TotalPinsNumberOfPinsPerBank NumberOfPinsPerBank In der Regel kann eine Bank in einem GPIO-Controllergerät unabhängig von den anderen Banken im selben Gerät ein- und ausgeschaltet werden. So kann Strom gespart werden, indem eine Bank ausgeschaltet wird, die sich im Leerlauf befindet.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Unterstützt ab Windows 8. |
Kopfzeile | gpioclx.h |