STM32 HAL库GPIO API函数详解
给个三连,谢谢
一.stm32f1xx_hal_gpio.c
1.初始化GPIO口配置——HAL_GPIO_Init()
//初始化 GPIO口配置
void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init);
1.1输入参数(2个)
1.2返回值:
2.复位GPIO口配置到默认复位值——HAL_GPIO_DeInit()
//复位-GPIO口配置到默认复位值
void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin);
2.1输入参数(2个)
2.2返回值
3.读取IO口电平状态——HAL_GPIO_ReadPin()
//读取IO口电平状态
GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);
3.1输入参数(2个)
3.2返回值
//返回值
GPIO_PIN_SET //高电平,数值1
GPIO_PIN_RESET //低电平,数值0
3.3关联寄存器
寄存器 GPIOx_IDR 位15:0 相应引脚的输入数据
4.配置IO口电平状态——HAL_GPIO_WritePin()
// 配置IO口电平状态
void HAL_GPIO_WritePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState);
4.1输入参数(3个)
(1)GPIO_PIN_SET :高电平,数值1
(2)GPIO_PIN_RESET :低电平,数值0
//PinState(设置什么电平状态)
GPIO_PIN_SET //高电平,数值1
GPIO_PIN_RESET //低电平,数值0
4.2返回值
4.3关联寄存器
5.翻转 IO口电平状态——HAL_GPIO_TogglePin()
// 翻转IO口电平状态,高到低,低到高
void HAL_GPIO_TogglePin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);
5.1输入参数(2个)
5.2返回值
5.3关联寄存器
6.锁定 IO口的配置,直至下次复位——HAL_GPIO_LockPin()
//锁定IO口的配置,直至下次复位
HAL_StatusTypeDef HAL_GPIO_LockPin(GPIO_TypeDef *GPIOx, uint16_t GPIO_Pin);
6.1输入参数(2个)
6.2返回值
//返回值
HAL_OK //正确
HAL_ERROR //错误
6.3关联寄存器
7.外部中断服务函数——HAL_GPIO_EXTI_IRQHandler()
//外部中断服务函数
void HAL_GPIO_EXTI_IRQHandler(uint16_t GPIO_Pin);
7.1输入参数(1个)
7.2返回值
7.3回调函数被上方的 HAL_GPIO_EXTI_IRQHandler()函数回调
//回调函数
void HAL_GPIO_EXTI_Callback(uint16_t GPIO_Pin);
二.stm32f1xx_hal_gpio_ex.c
1.配置哪个IO用于事件输出——HAL_GPIOEx_ConfigEventout()
//配置哪个IO用于事件输出
void HAL_GPIOEx_ConfigEventout(uint32_t GPIO_PortSource, uint32_t GPIO_PinSource);
1.1输入参数(2个)
(1)AFIO_EVENTOUT_PORT_A
(2)AFIO_EVENTOUT_PORT_B
(3)AFIO_EVENTOUT_PORT_C
(4)AFIO_EVENTOUT_PORT_D
//GPIO_PortSource(使用哪组IO端口)
AFIO_EVENTOUT_PORT_A
AFIO_EVENTOUT_PORT_B
AFIO_EVENTOUT_PORT_C
AFIO_EVENTOUT_PORT_D
1.2返回值
1.3关联寄存器
2.使能 HAL_GPIOEx_ConfigEventout()配置好的事件输出
//使能 HAL_GPIOEx_ConfigEventout 配置好的事件输出
void HAL_GPIOEx_EnableEventout(void);
2.1输入参数
2.2返回值
2.3关联寄存器
3.关闭 HAL_GPIOEx_ConfigEventout()配置好的事件输出
//关闭 HAL_GPIOEx_ConfigEventout 配置好的事件输出
void HAL_GPIOEx_DisableEventout(void);
3.1输入参数
3.2返回值
3.3关联寄存器
结束语
以上就是对STM32-HAL库-GPIO-API函数的一个总结
作者:加油1234