estructura GPIO_ENABLE_INTERRUPT_PARAMETERS (gpioclx.h)
La estructura GPIO_ENABLE_INTERRUPT_PARAMETERS especifica una patilla de E/S de uso general (GPIO) y describe los atributos de interrupción de este pin.
Sintaxis
typedef struct _GPIO_ENABLE_INTERRUPT_PARAMETERS {
BANK_ID BankId;
PIN_NUMBER PinNumber;
GPIO_ENABLE_INTERRUPT_FLAGS Flags;
KINTERRUPT_MODE InterruptMode;
KINTERRUPT_POLARITY Polarity;
UCHAR PullConfiguration;
USHORT DebounceTimeout;
PVOID VendorData;
ULONG VendorDataLength;
} GPIO_ENABLE_INTERRUPT_PARAMETERS, *PGPIO_ENABLE_INTERRUPT_PARAMETERS;
Miembros
BankId
Identificador del banco que contiene el pin GPIO. Si M es el número de bancos en el controlador GPIO, BankId es un entero del intervalo de 0 a M-1. La extensión del marco gpIO (GpioClx) obtuvo previamente el número de bancos en el controlador de la función de devolución de llamada de evento CLIENT_QueryControllerBasicInformation . Para obtener más información, vea Comentarios en CLIENT_CONTROLLER_BASIC_INFORMATION.
PinNumber
Número de pin relativo al banco. Si N es el número anclado en este banco, PinNumber es un entero del intervalo de 0 a N-1. GpioClx obtuvo previamente el número de patillas en cada banco de la función de devolución de llamada de evento CLIENT_QueryControllerBasicInformation . Para obtener más información, vea la descripción del miembro NumberOfPinsPerBank en CLIENT_CONTROLLER_BASIC_INFORMATION.
Flags
Conjunto de marcas que controlan la configuración de los patillas GPIO. Actualmente no hay marcas definidas para este miembro.
InterruptMode
Si la solicitud de interrupción de este pin gpIO distingue el nivel o se desencadena en el borde. Este miembro se establece en uno de los valores siguientes:
LevelSensitive
Trabado
Para obtener más información, consulte KINTERRUPT_MODE.
Polarity
Si la línea de interrupción de este pin GPIO es activa-alta o activa-baja. Este miembro se establece en uno de los valores siguientes:
InterruptActiveHigh
InterruptRisingEdge
InterruptActiveLow
InterruptFallingEdge
InterruptActiveBoth
Para obtener más información, consulte KINTERRUPT_POLARITY.
PullConfiguration
Indica si este pin gpIO se extrae o se tira hacia abajo. Este miembro se establece normalmente en una de las siguientes constantes definidas por el sistema:
GPIO_PIN_PULL_CONFIGURATION_PULLDEFAULT
GPIO_PIN_PULL_CONFIGURATION_PULLUP
GPIO_PIN_PULL_CONFIGURATION_PULLDOWN
GPIO_PIN_PULL_CONFIGURATION_PULLNONE
Si ninguna de estas constantes describe correctamente la configuración de patillas, este miembro se puede establecer en una constante definida por el proveedor en el intervalo 128-255. Para obtener más información sobre estas constantes, consulte GPIO_PIN_PULL_CONFIGURATION.
DebounceTimeout
Tiempo de espera en unidades de 10 microsegundos. Por ejemplo, una hora de desaplicación de 5,84 milisegundos se especifica como 584. El tiempo de espera es el tiempo necesario para que una señal de entrada se estabilice en un nivel alto después del inicio de una transición baja a alta, o en un nivel bajo después del inicio de una transición de alto a bajo. Por ejemplo, si un interruptor mecánico genera una señal de interrupción, el tiempo de espera es el tiempo necesario para que el contacto metálico del interruptor deje de rebotar después de que el interruptor esté activado o apagado.
VendorData
Puntero a un búfer asignado por el autor de la llamada que contiene datos definidos por el proveedor para este pin GPIO. Este miembro es opcional y se establece en NULL si no hay datos definidos por el proveedor disponibles. Para obtener más información sobre los datos definidos por el proveedor, vea la descripción del descriptor de conexión GPIO en la especificación ACPI 5.0.
VendorDataLength
Tamaño, en bytes, del búfer de datos al que apunta el miembro VendorData .
Comentarios
Las funciones de devolución de llamada de eventos CLIENT_EnableInterrupt y CLIENT_UnmaskInterrupt usan una estructura de GPIO_ENABLE_INTERRUPT_PARAMETERS para especificar un pin GPIO y describir los atributos de interrupción de este pin.
Las constantes GPIO_PIN_PULL_CONFIGURATION_XXX especifican si se extrae o se extrae una patilla de E/S de uso general (GPIO).
#define GPIO_PIN_PULL_CONFIGURATION_DEFAULT (0x0)
#define GPIO_PIN_PULL_CONFIGURATION_PULLUP (0x1)
#define GPIO_PIN_PULL_CONFIGURATION_PULLDOWN (0x2)
#define GPIO_PIN_PULL_CONFIGURATION_NONE (0x3)
El miembro PullConfiguration de la estructura GPIO_ENABLE_INTERRUPT_PARAMETERS se establece en una constante GPIO_PIN_PULL_CONFIGURATION_XXX .
Si ninguna de las constantes GPIO_PIN_PULL_CONFIGURATION_XXX definidas por el sistema describe correctamente la configuración de patillas, este miembro se puede establecer en una constante definida por el proveedor en el intervalo de 128 a 255.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Se admite a partir de Windows 8. |
Encabezado | gpioclx.h |
Consulte también
CLIENT_CONTROLLER_BASIC_INFORMATION