GPIO_CLIENT_CONNECT_IO_PINS Rückruffunktion (gpioclx.h)

Die CLIENT_ConnectIoPins Ereignisrückruffunktion öffnet eine logische Verbindung mit einer Reihe von GPIO-Pins (General Purpose E/O) und konfiguriert diese Pins für Lese- oder Schreibvorgänge von Daten.

Syntax

GPIO_CLIENT_CONNECT_IO_PINS GpioClientConnectIoPins;

NTSTATUS GpioClientConnectIoPins(
  [in] PVOID Context,
  [in] PGPIO_CONNECT_IO_PINS_PARAMETERS ConnectParameters
)
{...}

Parameter

[in] Context

Ein Zeiger auf den Gerätekontext des GPIO-Controllertreibers.

[in] ConnectParameters

Ein Zeiger auf eine GPIO_CONNECT_IO_PINS_PARAMETERS-Struktur , die eine Verbindung mit einer Gruppe von GPIO-Pins beschreibt und angibt, ob diese Pins als Dateneingaben oder -ausgaben konfiguriert werden sollen.

Rückgabewert

Die CLIENT_ConnectIoPins-Funktion gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich ist. Andernfalls wird ein entsprechender Fehlercode zurückgegeben.

Hinweise

Diese Rückruffunktion wird vom GPIO-Controllertreiber implementiert. Die GPIO-Frameworkerweiterung (GpioClx) ruft diese Funktion auf, um eine Verbindung mit einer Gruppe von GPIO-Pins zu öffnen. Diese Pins werden im PinNumberTable-Array in der GPIO_CONNECT_IO_PINS_PARAMETERS Struktur angegeben, auf die von ConnectParameters verwiesen wird. Das ConnectMode-Element dieser Struktur gibt an, ob die Pins als Ein- oder Ausgabe konfiguriert werden sollen.

Um die Verbindung zu schließen, ruft GpioClx die CLIENT_DisconnectIoPins Rückruffunktion auf.

Um die CLIENT_ConnectIoPins Rückruffunktion Ihres Treibers zu registrieren, rufen Sie die GPIO_CLX_RegisterClient-Methode auf. Diese Methode akzeptiert als Eingabeparameter einen Zeiger auf eine GPIO_CLIENT_REGISTRATION_PACKET-Struktur , die einen CLIENT_ConnectIoPins Funktionszeiger enthält.

Beispiele

Um eine CLIENT_ConnectIoPins Rückruffunktion zu definieren, müssen Sie zunächst eine Funktionsdeklaration bereitstellen, die den Typ der von Ihnen definierten Rückruffunktion identifiziert. Windows bietet eine Reihe von Rückruffunktionstypen für Treiber. Das Deklarieren einer Funktion mithilfe der Rückruffunktionstypen hilft der Codeanalyse für Treiber, der statischen Treiberüberprüfung (Static Driver Verifier , SDV) und anderen Überprüfungstools, Fehler zu finden, und es ist eine Anforderung zum Schreiben von Treibern für das Windows-Betriebssystem.

Um beispielsweise eine CLIENT_ConnectIoPins Rückruffunktion namens MyEvtGpioConnectIoPinszu definieren, verwenden Sie den funktionstyp GPIO_CLIENT_CONNECT_IO_PINS, wie in diesem Codebeispiel gezeigt:

GPIO_CLIENT_CONNECT_IO_PINS MyEvtGpioConnectIoPins;

Implementieren Sie dann Ihre Rückruffunktion wie folgt:

_Use_decl_annotations_
NTSTATUS
  MyEvtGpioConnectIoPins(
    PVOID Context,
    PGPIO_CONNECT_IO_PINS_PARAMETERS ConnectParameters
    )
{ ... }

Der GPIO_CLIENT_CONNECT_IO_PINS Funktionstyp ist in der Headerdatei Gpioclx.h definiert. Um Fehler beim Ausführen der Codeanalysetools genauer zu identifizieren, fügen Sie der Funktionsdefinition die Use_decl_annotations Anmerkung hinzu. Die Use_decl_annotations Anmerkung stellt sicher, dass die Anmerkungen verwendet werden, die auf den GPIO_CLIENT_CONNECT_IO_PINS Funktionstyp in der Headerdatei angewendet werden. Weitere Informationen zu den Anforderungen für Funktionsdeklarationen finden Sie unter Deklarieren von Funktionen mithilfe von Funktionsrollentypen für KMDF-Treiber. Weitere Informationen zu Use_decl_annotations finden Sie unter Verhalten von Funktionen mit Anmerkungen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Wird ab Windows 8 unterstützt.
Zielplattform Desktop
Kopfzeile gpioclx.h
IRQL Wird bei PASSIVE_LEVEL aufgerufen.

Weitere Informationen

CLIENT_DisconnectIoPins

GPIO_CLIENT_REGISTRATION_PACKET

GPIO_CLX_RegisterClient