File nut/include/dev/gpio_stm32.h


Included Files


Preprocessor definitions

#define NUTGPIO_PORT GPIOA_BASE

#define NUTGPIO_PORTA GPIOA_BASE

#define NUTGPIO_PORTB GPIOB_BASE

#define NUTGPIO_PORTC GPIOC_BASE

#define NUTGPIO_PORTD GPIOD_BASE

#define NUTGPIO_PORTE GPIOE_BASE

#define NUTGPIO_PORTF GPIOF_BASE

#define NUTGPIO_PORTG GPIOG_BASE

#define NUTGPIO_PORTH GPIOH_BASE

#define NUTGPIO_PORTI GPIOI_BASE

#define NUTGPIO_EXTINT0 1

#define NUTGPIO_EXTINT1 2

#define NUTGPIO_EXTINT2 3

#define NUTGPIO_EXTINT3 4

#define NUTGPIO_EXTINT4 5

#define GPIO_CFG_INPUT 0x00000000

#define GPIO_CFG_DISABLED 0x00000001

#define GPIO_CFG_OUTPUT 0x00000002

#define GPIO_CFG_PULLUP 0x00000004

#define GPIO_CFG_PULLDOWN 0x00000100

#define GPIO_CFG_MULTIDRIVE 0x00000008

#define GPIO_CFG_DEBOUNCE 0x00000000

#define GPIO_CFG_PERIPHAL 0x00000020

#define GPIO_CFG_SPEED 0x000000C0

#define GPIO_CFG_SPEED_SLOW 0x00000040

#define GPIO_CFG_SPEED_MED 0x00000000

#define GPIO_CFG_SPEED_FAST 0x00000080

#define GPIO_CFG_SPEED_HIGH 0x000000C0

#define GPIO_CFG_INIT_LOW 0x40000000

#define GPIO_CFG_INIT_HIGH 0x80000000

#define GpioPinGet( bank, bit )

#define GpioPinSet( bank, bit, value )

#define GpioPinSetHigh( bank, bit )

#define GpioPinSetLow( bank, bit )

#define GpioPinDrive( bank, bit )

#define GpioPinRelease( bank, bit )

#define GpioPortGet( bank )

#define GpioPortSet( bank, value )

#define GpioPortSetHigh( bank, mask )

#define GpioPortSetLow( bank, mask )

#define GpioClkEnable( bank )


Typedef nutgpio_port_t

typedef uint32_t nutgpio_port_t

Typedef nutgpio_pin_t

typedef uint_fast16_t nutgpio_pin_t

Typedef GPIO_VECTOR

typedef struct {...} GPIO_VECTOR
struct  
   {  
      void (*iov_handler)(void*);  
      void* iov_arg;  
   }  

Typedef GPIO_SIGNAL

typedef struct {...} GPIO_SIGNAL
struct  
   {  
      IRQ_HANDLER* ios_sig;  
      void (*ios_handler)(void*);  
      int (*ios_ctl)(int cmd,void* param,int bit);  
      GPIO_VECTOR* ios_vector;  
   }