STM32学习(一)--HAL库中GPIO相关函数

GPIO常用函数

GPIO初始化和去初始化函数:

1. GPIO初始化函数

void              HAL_GPIO_Init(GPIO_TypeDef  *GPIOx, GPIO_InitTypeDef *GPIO_Init);
/************************************
功能:根据指定参数初始化GPIOx外设
参数定义:
GPIOx:其中x可以是(A..H),用于选择STM32L4系列的GPIO外设
GPIO_Init:指向GPIO_InitTypeDef结构的指针,该结构包含指定GPIO外设的配置信息。
***********************************/

2. GPIO去初始化函数

void HAL_GPIO_DeInit(GPIO_TypeDef  *GPIOx, uint32_t GPIO_Pin);
/************************************
功能:将GPIOx外设寄存器解除初始化为其默认复位值。
参数定义:
GPIOx:其中x可以是(A..H),用于选择STM32L4系列的GPIO外设
GPIO_Pin:指定要写入的端口位;此参数可以是GPIO_Pin_x的任意组合,其中x可以是(0..15)。
***********************************/

GPIO基础功能:

1. 读取指定GPIO的值

GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
/************************************
参数定义:
GPIOx:其中x可以是(A..H),用于选择STM32L4系列的GPIO外设
GPIO_Pin:指定要写入的端口位;此参数可以是GPIO_Pin_x的任意组合,其中x可以是(0..15)。
返回值:端口引脚值
***********************************/

2. 向指定GPIO写入值

void HAL_GPIO_WritePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState)
/************************************
参数定义:
GPIOx:其中x可以是(A..H),用于选择STM32L4系列的GPIO外设
GPIO_Pin:指定要写入的端口位;此参数可以是GPIO_Pin_x的任意组合,其中x可以是(0..15)。
PinState:指定要写入的值
   *此参数可以是GPIO_PinState枚举值之一:
   *  GPIO_PIN_RESET:清0
   *  GPIO_PIN_SET:置1
***********************************/

3. 对指定GPIO的值取反和锁定

void HAL_GPIO_TogglePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin)
HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin);

/************************************
参数定义:
GPIOx:其中x可以是(A..H),用于选择STM32L4系列的GPIO外设
GPIO_Pin:指定要写入的端口位;此参数可以是GPIO_Pin_x的任意组合,其中x可以是(0..15)。

***********************************/

4. GPIO中断

void  HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin);
__weak void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin);
/***************************************
功能:
 HAL_GPIO_EXTI_IRQHandler: 中断请求标志位清零并进入回调函数
 HAL_GPIO_EXTI_Callback: 中断服务函数
 EXTI线路检测回调。
__weak:__weak 修饰符的函数,用户可以在用户文件中重新定义一个同名函数,最终编译器编译的时候,会选择用户定义的函数,如果用户没有重新定义这个函数,那么编译器就会执行__weak 声明的函数,并且编译器不会报错。
****************************************/

你可能感兴趣的:(STM32)