¿Cómo configurar STM32GPIO para captura de entrada y salida (biblioteca HAL)?
Descripción funcional de GPIO
Cada puerto GPIO tiene dos registros de configuración de 32 bits (GPIOx_CRL, GPIOx_CRH), dos registros de datos de 32 bits (GPIOx_IDR y GPIOx_ODR), un registro de datos de 32 bits /reset de registro (GPIOx_BSRR), un registro de reinicio de 16 bits (GPIOx_BRR) y un registro de bloqueo de 32 bits (GPIOx_LCKR).
Cada bit del puerto GPIO se puede configurar en múltiples modos mediante software.
-Entrada flotante
-Entrada pull-up
-Entrada desplegable
-Entrada analógica
- Salida de drenaje abierto
-Salida push-pull
-Función de multiplexación push-pull
-Función de multiplexación de drenaje abierto
Cada bit de cada puerto de E/S se puede programar libremente; sin embargo, se debe acceder a los registros del puerto de E/S como palabras de 32 bits (no se permiten accesos de media palabra o byte). Los registros GPIOx_BSRR y GPIOx_BRR permiten el acceso independiente a cualquier registro GPIO para lectura/cambio; de esta manera, no ocurre ningún peligro cuando se genera una IRQ entre los accesos de lectura y cambio.
La siguiente figura muestra la estructura básica de un bit de puerto de E/S.