struttura GPIO_CONNECT_IO_PINS_PARAMETERS (gpioclx.h)
La struttura GPIO_CONNECT_IO_PINS_PARAMETERS descrive una connessione logica a un set di pin di I/O (GPIO) per utilizzo generico e specifica se configurare questi pin come input o output di dati.
Sintassi
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;
Members
BankId
Identificatore della banca che contiene i pin GPIO. Se M è il numero di banche nel controller GPIO, BankId è un numero intero compreso nell'intervallo da 0 a M-1. L'estensione del framework GPIO (GpioClx) ha ottenuto in precedenza il numero di banche nel controller dalla funzione di callback degli eventi CLIENT_QueryControllerBasicInformation . Per altre informazioni, vedere La sezione Osservazioni in CLIENT_CONTROLLER_BASIC_INFORMATION.
PinNumberTable
Puntatore a una matrice di valori PIN_NUMBER. Ogni elemento della matrice specifica il numero di un pin GPIO a cui connettersi. Se N è il numero di pin in questa banca, i pin sono numerati da 0 a N-1. Il numero di elementi in questa matrice viene specificato dal membro PinCount .
PinCount
Numero di elementi nella matrice PinNumberTable .
ConnectMode
Indica se i pin GPIO nella nuova connessione devono essere configurati come input o come output. Il valore di questo parametro è ConnectModeInput per una connessione di sola lettura, ConnectModeOutput per una connessione di sola scrittura e (ConnectModeInput | ConnectModeOutput) per una connessione di lettura/scrittura. Per altre informazioni, vedere GPIO_CONNECT_IO_PINS_MODE.
PullConfiguration
Indica se il pin GPIO viene trascinato verso l'alto o verso il basso. Questo membro viene in genere impostato su una delle costanti definite dal sistema seguenti:
- GPIO_PIN_PULL_CONFIGURATION_PULLDEFAULT
- GPIO_PIN_PULL_CONFIGURATION_PULLUP
- GPIO_PIN_PULL_CONFIGURATION_PULLDOWN
- GPIO_PIN_PULL_CONFIGURATION_PULLNONE
DebounceTimeout
Tempo di deounce in unità di 10 microsecondi. Ad esempio, un tempo di debounce di 5,84 millisecondi viene specificato come 584. Se un segnale di input viene generato da un interruttore meccanico, il contatto metallico nel commutatore tende a rimbalzare per un breve periodo dopo l'accensione o la disattivazione del commutatore. Il tempo di debounce è il tempo minimo che il livello del segnale di input deve rimanere stabile prima che il segnale possa essere interpretato come un livello alto o basso valido.
DriveStrength
La forza di guida del pin GPIO in unità di 10 micrompere. Ad esempio, un livello di forza di unità di 1,21 milliamperes viene specificato come 121.
VendorData
Puntatore a un buffer allocato dal chiamante che contiene dati specifici del fornitore ottenuti dal firmware ACPI per la piattaforma hardware. Questi dati vengono copiati dal campo VendorData del descrittore di risorse GPIO che descrive la connessione I/O dei dati tra il dispositivo periferico e un set di pin GPIO nel controller GPIO. Questo membro è facoltativo ed è impostato su NULL se il firmware non fornisce dati specifici del fornitore per questa connessione.
VendorDataLength
Dimensioni, in byte, del buffer di dati a cui punta il membro VendorData . Se VendorData è NULL, VendorDataLength è impostato su zero.
ConnectFlags
Set di flag che controllano la configurazione dei pin GPIO. Nessun flag è attualmente definito per questo membro.
Commenti
Il parametro ClientParameters per la routine di callback dell'evento CLIENT_ConnectIoPins è un puntatore a una struttura GPIO_CONNECT_IO_PINS_PARAMETERS .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Supportato a partire da Windows 8. |
Intestazione | gpioclx.h |
Vedi anche
CLIENT_CONTROLLER_BASIC_INFORMATION