Controladores de e/s de uso geral (GPIO)

O driver do controlador GPIO (e/s de finalidade geral) se comunica com a extensão de estrutura GPIO (GpioClx) por meio da DDI (interface de driver de dispositivo) GpioClx. Essa DDI é definida no arquivo de cabeçalho Gpioclx. h e é descrita nesta seção. Como parte dessa DDI, o GpioClx implementa vários métodos de suporte de driver, que são chamados pelo driver do controlador GPIO. Esse driver implementa um conjunto de funções de retorno de chamada de evento, que são chamadas por GpioClx. O GpioClx usa esses retornos de chamada para gerenciar solicitações de interrupção de pinos do GPIO configurados como entradas de interrupção e para transferir dados de ou para Pins do GPIO configurados como entradas e saídas de dados.

Para obter informações conceituais sobre como escrever drivers de cliente do GPIOClx, consulte Guia de design de driver de e/s de uso geral (GPIO)

IOCTLs

 
IOCTL_GPIO_CONTROLLER_SPECIFIC_FUNCTION

O código de controle de e/s de IOCTL_GPIO_CONTROLLER_SPECIFIC_FUNCTION permite que um cliente do controlador GPIO (e/s de uso geral) solicite uma operação de controle de dispositivo específica ao controlador.
IOCTL_GPIO_READ_PINS

O código de controle de e/s IOCTL_GPIO_READ_PINS permite que um cliente do controlador GPIO (e/s de uso geral) Leia a partir de um conjunto de pinos de GPIO configurados como entradas.
IOCTL_GPIO_WRITE_PINS

O código de controle de e/s IOCTL_GPIO_WRITE_PINS permite que um cliente do controlador GPIO (e/s de uso geral) grave em um conjunto de pinos de GPIO configurados como saídas.

Enumerações

 
CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE

O tipo de enumeração CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE indica que tipo de informações de atributo a extensão de estrutura GPIO (GpioClx) está solicitando do driver do controlador GPIO.
GPIO_CONNECT_IO_PINS_MODE

A enumeração GPIO_CONNECT_IO_PINS_MODE indica se um conjunto de Pins de e/s de finalidade geral (GPIO) está configurado como entradas ou saídas.

Funções

 
GPIO_CLIENT_CLEAR_ACTIVE_INTERRUPTS

A função de retorno de chamada de evento CLIENT_ClearActiveInterrupts limpa as interrupções ativas em um conjunto de Pins de e/s de uso geral (GPIO) que são configurados como entradas de interrupção.
GPIO_CLIENT_CONNECT_IO_PINS

A função de retorno de chamada de evento CLIENT_ConnectIoPins abre uma conexão lógica com um conjunto de Pins de e/s de uso geral (GPIO) e configura esses Pins para operações de leitura ou gravação de dados.
GPIO_CLIENT_CONTROLLER_SPECIFIC_FUNCTION

A função de retorno de chamada de evento CLIENT_ControllerSpecificFunction executa uma operação específica para um controlador GPIO (e/s de finalidade geral) específico.
GPIO_CLIENT_DISABLE_INTERRUPT

A função de retorno de chamada de evento CLIENT_DisableInterrupt desabilita interrupções em um PIN de e/s de uso geral (GPIO) que é configurado como uma entrada de interrupção.
GPIO_CLIENT_DISCONNECT_IO_PINS

A função de retorno de chamada de evento CLIENT_DisconnectIoPins fecha uma conexão lógica com um conjunto de Pins de e/s de uso geral (GPIO) que são configurados para operações de leitura ou gravação de dados.
GPIO_CLIENT_ENABLE_INTERRUPT

A função de retorno de chamada de evento CLIENT_EnableInterrupt permite interrupções em um PIN de e/s de uso geral (GPIO) configurado como uma entrada de interrupção.
GPIO_CLIENT_MASK_INTERRUPTS

A função de retorno de chamada de evento CLIENT_MaskInterrupts mascara as interrupções em um conjunto de Pins de e/s de uso geral (GPIO) que são configurados como entradas de interrupção.
GPIO_CLIENT_PRE_PROCESS_CONTROLLER_INTERRUPT

A função de retorno de chamada de evento CLIENT_PreProcessControllerInterrupt executa qualquer pré-processamento de uma interrupção de e/s de uso geral (GPIO) que deve ser feita imediatamente se o ISR estiver agendado para ser executado posteriormente.
GPIO_CLIENT_PREPARE_CONTROLLER

A função de retorno de chamada de evento CLIENT_PrepareController executa quaisquer operações necessárias para tornar o controlador GPIO (e/s de uso geral) pronto para ser acessado pelo driver do controlador GPIO.
GPIO_CLIENT_QUERY_ACTIVE_INTERRUPTS

A função de retorno de chamada de evento CLIENT_QueryActiveInterrupts consulta o estado de um conjunto de Pins de e/s de uso geral (GPIO) que são configurados como entradas de interrupção.
GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION

A função de retorno de chamada de evento CLIENT_QueryControllerBasicInformation recupera os atributos de hardware do controlador GPIO (e/s de finalidade geral).
GPIO_CLIENT_QUERY_ENABLED_INTERRUPTS

A função de retorno de chamada de evento CLIENT_QueryEnabledInterrupts consulta o estado de um conjunto de Pins de e/s de uso geral (GPIO) para determinar quais Pins estão configurados como entradas de interrupção e habilitados para interrupções.
GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION

A função de retorno de chamada de evento CLIENT_QuerySetControllerInformation consulta o driver do controlador GPIO (e/s de finalidade geral) para o conjunto especificado de atributos do controlador GPIO.
GPIO_CLIENT_READ_PINS

A função de retorno de chamada de evento CLIENT_ReadGpioPins lê um conjunto de Pins de e/s de uso geral (GPIO) que são configurados como entradas de dados.
GPIO_CLIENT_READ_PINS_MASK

A função de retorno de chamada de evento CLIENT_ReadGpioPinsUsingMask lê um banco de Pins de e/s de uso geral (GPIO).
GPIO_CLIENT_RECONFIGURE_INTERRUPT

A função de retorno de chamada de evento CLIENT_ReconfigureInterrupt reconfigura um PIN de e/s de uso geral (GPIO) que é usado como uma entrada de interrupção.
GPIO_CLIENT_RELEASE_CONTROLLER

A função de retorno de chamada de evento CLIENT_ReleaseController executa operações que são necessárias quando o dispositivo do controlador GPIO (e/s de finalidade geral) não está mais acessível.
GPIO_CLIENT_RESTORE_BANK_HARDWARE_CONTEXT

A função de retorno de chamada de evento CLIENT_RestoreBankHardwareContext restaura o contexto de hardware de um banco de Pins de e/s de uso geral (GPIO).
GPIO_CLIENT_SAVE_BANK_HARDWARE_CONTEXT

A função de retorno de chamada de evento CLIENT_SaveBankHardwareContext salva o contexto de hardware de um banco de Pins de e/s de uso geral (GPIO).
GPIO_CLIENT_START_CONTROLLER

A função de retorno de chamada de evento CLIENT_StartController executa operações que são necessárias quando o dispositivo do controlador GPIO (e/s de finalidade geral) entra no estado de energia D0.
GPIO_CLIENT_STOP_CONTROLLER

A função de retorno de chamada de evento CLIENT_StopController executa operações que são necessárias para preparar o dispositivo do controlador GPIO (e/s de finalidade geral) para sair do estado de energia D0.
GPIO_CLIENT_UNMASK_INTERRUPT

A função de retorno de chamada de evento CLIENT_UnmaskInterrupt desmascara a interrupção em um PIN de e/s de uso geral (GPIO) configurado como uma entrada de interrupção.
GPIO_CLIENT_WRITE_PINS

A função de retorno de chamada de evento CLIENT_WriteGpioPins grava em um conjunto de Pins de e/s de uso geral (GPIO) que são configurados como saídas de dados.
GPIO_CLIENT_WRITE_PINS_MASK

A função de retorno de chamada de evento CLIENT_WriteGpioPinsUsingMask grava em um conjunto de Pins de e/s de uso geral (GPIO) que são configurados como saídas de dados.
GPIO_CLX_AcquireInterruptLock

O método GPIO_CLX_AcquireInterruptLock adquire um bloqueio de interrupção em um banco de Pins no controlador de e/s de finalidade geral (GPIO).
GPIO_CLX_ProcessAddDevicePostDeviceCreate

O método GPIO_CLX_ProcessAddDevicePostDeviceCreate passa um objeto de dispositivo de estrutura para a extensão de estrutura GPIO (GpioClx).
GPIO_CLX_ProcessAddDevicePreDeviceCreate

O método GPIO_CLX_ProcessAddDevicePreDeviceCreate carrega informações de inicialização em duas estruturas que são passadas como parâmetros de entrada para o método WdfDeviceCreate.
GPIO_CLX_RegisterClient

O método GPIO_CLX_RegisterClient registra um driver de controlador de e/s de finalidade geral (GPIO) como um cliente da GpioClx (extensão de estrutura GPIO).
GPIO_CLX_ReleaseInterruptLock

O método GPIO_CLX_ReleaseInterruptLock libera um bloqueio de interrupção no banco especificado.
GPIO_CLX_UnregisterClient

O método GPIO_CLX_UnregisterClient remove um registro de driver de controlador de e/s de finalidade geral (GPIO) com a extensão de estrutura GPIO (GpioClx).

Estruturas

 
CLIENT_CONTROLLER_BASIC_INFORMATION

A estrutura de CLIENT_CONTROLLER_BASIC_INFORMATION contém atributos de hardware do controlador de e/s de uso geral (GPIO) e informações de configuração.
CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT

A estrutura de CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT contém uma solicitação para os atributos de hardware do controlador de e/s de finalidade geral (GPIO).
CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT

A estrutura de CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT contém um conjunto de atributos de controlador de e/s de finalidade geral (GPIO) que foram solicitados pela GpioClx (extensão de estrutura GPIO).
CLIENT_QUERY_BANK_POWER_INFORMATION_OUTPUT

A estrutura de CLIENT_QUERY_BANK_POWER_INFORMATION_OUTPUT contém informações sobre os recursos de gerenciamento de energia de um banco de Pins de e/s de uso geral (GPIO).
CONTROLLER_ATTRIBUTE_FLAGS

A estrutura de CONTROLLER_ATTRIBUTE_FLAGS descreve os atributos de hardware do dispositivo do controlador GPIO (e/s de finalidade geral).
GPIO_CLEAR_ACTIVE_INTERRUPTS_PARAMETERS

A estrutura de GPIO_CLEAR_ACTIVE_INTERRUPTS_PARAMETERS descreve um conjunto de Pins de interrupção de e/s de uso geral (GPIO) para limpar.
GPIO_CLIENT_CONTROLLER_SPECIFIC_FUNCTION_PARAMETERS

A estrutura de GPIO_CLIENT_CONTROLLER_SPECIFIC_FUNCTION_PARAMETERS descreve os buffers de entrada e saída para uma operação específica do controlador.
GPIO_CLIENT_REGISTRATION_PACKET

A estrutura de GPIO_CLIENT_REGISTRATION_PACKET contém informações de registro que o driver do controlador de e/s de finalidade geral (GPIO) passa para a GpioClx (extensão de estrutura GPIO).
GPIO_CONNECT_IO_PINS_PARAMETERS

A estrutura de GPIO_CONNECT_IO_PINS_PARAMETERS descreve uma conexão lógica com um conjunto de Pins de e/s de uso geral (GPIO) e especifica se esses Pins devem ser configurados como entradas ou saídas de dados.
GPIO_DISABLE_INTERRUPT_PARAMETERS

A estrutura de GPIO_DISABLE_INTERRUPT_PARAMETERS descreve um PIN de interrupção de e/s de uso geral (GPIO) para desabilitar.
GPIO_DISCONNECT_IO_PINS_PARAMETERS

A estrutura de GPIO_DISCONNECT_IO_PINS_PARAMETERS descreve um conjunto de Pins de e/s de uso geral (GPIO) que devem ser desconectados.
GPIO_ENABLE_INTERRUPT_PARAMETERS

A estrutura de GPIO_ENABLE_INTERRUPT_PARAMETERS especifica um PIN de e/s de uso geral (GPIO) e descreve os atributos de interrupção desse PIN.
GPIO_MASK_INTERRUPT_PARAMETERS

A estrutura de GPIO_MASK_INTERRUPT_PARAMETERS descreve um conjunto de Pins de interrupção de e/s de uso geral (GPIO) para mascarar.
GPIO_QUERY_ACTIVE_INTERRUPTS_PARAMETERS

A estrutura de GPIO_QUERY_ACTIVE_INTERRUPTS_PARAMETERS descreve um conjunto de Pins de interrupção de e/s de uso geral (GPIO) para consultar seus Estados habilitados e ativos.
GPIO_QUERY_ENABLED_INTERRUPTS_PARAMETERS

A estrutura de GPIO_QUERY_ENABLED_INTERRUPTS_PARAMETERS indica quais Pins de interrupção em um banco de Pins de e/s de uso geral (GPIO) estão habilitados.
GPIO_READ_PINS_MASK_PARAMETERS

A estrutura de GPIO_READ_PINS_MASK_PARAMETERS descreve uma operação de leitura em um banco de Pins de e/s de uso geral (GPIO).
GPIO_READ_PINS_PARAMETERS

A estrutura de GPIO_READ_PINS_PARAMETERS descreve uma operação de leitura em um grupo de Pins de e/s de uso geral (GPIO).
GPIO_RECONFIGURE_INTERRUPTS_PARAMETERS

A estrutura de GPIO_RECONFIGURE_INTERRUPTS_PARAMETERS descreve o PIN de interrupção de e/s de uso geral (GPIO) para reconfigurar.
GPIO_SAVE_RESTORE_BANK_HARDWARE_CONTEXT_PARAMETERS

A estrutura de GPIO_SAVE_RESTORE_BANK_HARDWARE_CONTEXT_PARAMETERS descreve um banco de Pins de e/s de uso geral (GPIO) cujo estado de hardware deve ser salvo ou restaurado.
GPIO_WRITE_PINS_MASK_PARAMETERS

A estrutura de GPIO_WRITE_PINS_MASK_PARAMETERS descreve uma operação de gravação em um banco de Pins de e/s de uso geral (GPIO).
GPIO_WRITE_PINS_PARAMETERS

A estrutura de GPIO_WRITE_PINS_PARAMETERS descreve uma operação de gravação em um grupo de Pins de e/s de uso geral (GPIO).