25typedef volatile struct __attribute__((packed,aligned(4))) {
37#define NEORV32_GPIO ((neorv32_gpio_t*) (NEORV32_GPIO_BASE))
43enum GPIO_TRIGGER_enum {
44 GPIO_TRIG_LEVEL_LOW = 0b00,
45 GPIO_TRIG_LEVEL_HIGH = 0b01,
46 GPIO_TRIG_EDGE_FALLING = 0b10,
47 GPIO_TRIG_EDGE_RISING = 0b11
Main NEORV32 core library / driver / HAL include file.
uint32_t neorv32_gpio_irq_get(void)
Definition neorv32_gpio.c:164
void neorv32_gpio_pin_toggle(int pin)
Definition neorv32_gpio.c:46
void neorv32_gpio_pin_dir_set(int pin, int dir)
Definition neorv32_gpio.c:113
int neorv32_gpio_available(void)
Definition neorv32_gpio.c:20
void neorv32_gpio_port_toggle(uint32_t pin_mask)
Definition neorv32_gpio.c:74
void neorv32_gpio_pin_set(int pin, int value)
Definition neorv32_gpio.c:30
void neorv32_gpio_irq_enable(uint32_t pin_mask)
Definition neorv32_gpio.c:155
void neorv32_gpio_irq_clr(uint32_t pin_mask)
Definition neorv32_gpio.c:173
uint32_t neorv32_gpio_port_dir_get(void)
Definition neorv32_gpio.c:103
uint32_t neorv32_gpio_port_get(void)
Definition neorv32_gpio.c:83
void neorv32_gpio_port_dir_set(uint32_t pin_mask)
Definition neorv32_gpio.c:93
void neorv32_gpio_port_set(uint32_t pin_mask)
Definition neorv32_gpio.c:65
void neorv32_gpio_irq_setup(int pin, int trigger)
Definition neorv32_gpio.c:130
uint32_t neorv32_gpio_pin_get(int pin)
Definition neorv32_gpio.c:56
Definition neorv32_gpio.h:25
uint32_t PORT_OUT
Definition neorv32_gpio.h:27
uint32_t IRQ_PENDING
Definition neorv32_gpio.h:33
uint32_t PORT_DIR
Definition neorv32_gpio.h:28
uint32_t IRQ_ENABLE
Definition neorv32_gpio.h:32
uint32_t IRQ_TYPE
Definition neorv32_gpio.h:30
const uint32_t reserved
Definition neorv32_gpio.h:29
uint32_t IRQ_POLARITY
Definition neorv32_gpio.h:31
const uint32_t PORT_IN
Definition neorv32_gpio.h:26