Low-level GPIO peripheral driver interface definitions. More...
Low-level GPIO peripheral driver interface definitions.
Definition in file gpio.h.
#include <limits.h>#include <stdbool.h>#include "periph_cpu.h"#include "periph_conf.h"
Include dependency graph for gpio.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Data Structures | |
| struct | gpio_isr_ctx_t |
| Default interrupt context for GPIO pins. More... | |
Macros | |
| #define | GPIO_PIN(x, y) |
Convert (port, pin) tuple to gpio_t value. | |
| #define | GPIO_UNDEF ((gpio_t)(UINT_MAX)) |
| GPIO pin not defined. | |
Typedefs | |
| typedef void(* | gpio_cb_t) (void *arg) |
| Signature of event callback functions triggered from interrupts. | |
Enumerations | |
| enum | gpio_mode_t { GPIO_IN , GPIO_IN_PD , GPIO_IN_PU , GPIO_OUT , GPIO_OD , GPIO_OD_PU } |
| Available pin modes. More... | |
| enum | gpio_flank_t { GPIO_FALLING = 0 , GPIO_RISING = 1 , GPIO_BOTH = 2 } |
| Definition of possible active flanks for external interrupt mode. More... | |
Functions | |
| int | gpio_init (gpio_t pin, gpio_mode_t mode) |
| Initialize the given pin as general purpose input or output. | |
| int | gpio_init_int (gpio_t pin, gpio_mode_t mode, gpio_flank_t flank, gpio_cb_t cb, void *arg) |
| Initialize a GPIO pin for external interrupt usage. | |
| void | gpio_irq_enable (gpio_t pin) |
| Enable pin interrupt if configured as interrupt source. | |
| void | gpio_irq_disable (gpio_t pin) |
| Disable the pin interrupt if configured as interrupt source. | |
| bool | gpio_read (gpio_t pin) |
| Get the current value of the given pin. | |
| void | gpio_set (gpio_t pin) |
| Set the given pin to HIGH. | |
| void | gpio_clear (gpio_t pin) |
| Set the given pin to LOW. | |
| void | gpio_toggle (gpio_t pin) |
| Toggle the value of the given pin. | |
| void | gpio_write (gpio_t pin, bool value) |
| Set the given pin to the given value. | |
| static int | gpio_is_equal (gpio_t gpio1, gpio_t gpio2) |
| Test if a GPIO pin is equal to another GPIO pin. | |
| static int | gpio_is_valid (gpio_t gpio) |
| Test if a GPIO pin is a valid pin and not declared as undefined. | |