18#ifndef __ST_HAL_GPIO_H__
19#define __ST_HAL_GPIO_H__
31#define GPIO_PIN_0 ((uint16_t)0x0001)
32#define GPIO_PIN_1 ((uint16_t)0x0002)
33#define GPIO_PIN_2 ((uint16_t)0x0004)
34#define GPIO_PIN_3 ((uint16_t)0x0008)
35#define GPIO_PIN_4 ((uint16_t)0x0010)
36#define GPIO_PIN_5 ((uint16_t)0x0020)
37#define GPIO_PIN_6 ((uint16_t)0x0040)
38#define GPIO_PIN_7 ((uint16_t)0x0080)
39#define GPIO_PIN_8 ((uint16_t)0x0100)
40#define GPIO_PIN_9 ((uint16_t)0x0200)
41#define GPIO_PIN_10 ((uint16_t)0x0400)
42#define GPIO_PIN_11 ((uint16_t)0x0800)
43#define GPIO_PIN_12 ((uint16_t)0x1000)
44#define GPIO_PIN_13 ((uint16_t)0x2000)
45#define GPIO_PIN_14 ((uint16_t)0x4000)
46#define GPIO_PIN_15 ((uint16_t)0x8000)
47#define GPIO_PIN_All ((uint16_t)0xFFFF)
49#define GPIO_PIN_MASK 0x0000FFFFU
51#define GPIO_MODE_INPUT VSF_GPIO_INPUT
52#define GPIO_MODE_OUTPUT_PP VSF_GPIO_OUTPUT_PUSH_PULL
53#define GPIO_MODE_OUTPUT_OD VSF_GPIO_OUTPUT_OPEN_DRAIN
55#define GPIO_MODE_AF_PP VSF_GPIO_AF_PUSH_PULL
56#define GPIO_MODE_AF_OD VSF_GPIO_AF_OPEN_DRAIN
58#define GPIO_MODE_ANALOG VSF_GPIO_ANALOG
60#define GPIO_MODE_IT_RISING (VSF_GPIO_EXTI | VSF_GPIO_EXTI_MODE_RISING)
61#define GPIO_MODE_IT_FALLING (VSF_GPIO_EXTI | VSF_GPIO_EXTI_MODE_FALLING)
62#define GPIO_MODE_IT_RISING_FALLING \
63 (VSF_GPIO_EXTI | VSF_GPIO_EXTI_MODE_RISING_FALLING)
65#define GPIO_NOPULL VSF_GPIO_NO_PULL_UP_DOWN
66#define GPIO_PULLUP VSF_GPIO_PULL_UP
67#define GPIO_PULLDOWN VSF_GPIO_PULL_DOWN
69#if defined(VSF_GPIO_SPEED_MASK)
70# if define VSF_GPIO_SPEED_LOW
71# define GPIO_SPEED_FREQ_LOW VSF_GPIO_SPEED_LOW
73# if define VSF_GPIO_SPEED_MEDIUM
74# define GPIO_SPEED_FREQ_MEDIUM VSF_GPIO_SPEED_MEDIUM
76# if define VSF_GPIO_SPEED_HIGH
77# define GPIO_SPEED_FREQ_HIGH VSF_GPIO_SPEED_HIGH
79# if define VSF_GPIO_SPEED_VERY_HIGH
80# define GPIO_SPEED_FREQ_VERY_HIGH VSF_GPIO_SPEED_VERY_HIGH
84#ifndef GPIO_SPEED_FREQ_LOW
85# define GPIO_SPEED_FREQ_LOW 0
87#ifndef GPIO_SPEED_FREQ_MEDIUM
88# define GPIO_SPEED_FREQ_MEDIUM 0
90#ifndef GPIO_SPEED_FREQ_HIGH
91# define GPIO_SPEED_FREQ_HIGH 0
93#ifndef GPIO_SPEED_FREQ_VERY_HIGH
94# define GPIO_SPEED_FGPIO_SPEED_FREQ_VERY_HIGHREQ_LOW 0
unsigned short uint16_t
Definition stdint.h:7
unsigned uint32_t
Definition stdint.h:9
HAL_StatusTypeDef
Definition sthal_def.h:61
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin)
Definition sthal_gpio.c:44
void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init)
Definition sthal_gpio.c:56
GPIO_PinState
Definition sthal_gpio.h:110
@ GPIO_PIN_SET
Definition sthal_gpio.h:112
@ GPIO_PIN_RESET
Definition sthal_gpio.h:111
void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin)
Definition sthal_gpio.c:120
HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
Definition sthal_gpio.c:114
vsf_gpio_t GPIO_TypeDef
Definition sthal_gpio.h:100
GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
Definition sthal_gpio.c:89
void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState)
Definition sthal_gpio.c:97
void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin)
Definition sthal_gpio.c:106
void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin)
Definition sthal_gpio.c:77
Definition sthal_gpio.h:102
uint32_t Mode
Definition sthal_gpio.h:104
uint32_t Alternate
Definition sthal_gpio.h:107
uint32_t Pull
Definition sthal_gpio.h:105
uint32_t Pin
Definition sthal_gpio.h:103
uint32_t Speed
Definition sthal_gpio.h:106
Definition vsf_template_gpio.h:720