20230731_XiaoFuZi_emb/ZheDaXiaoFuZi/Src/Usr/Bsp/McuBspGpio.h
Rjh913828050 a8560d741e 类型:重构
内容:重新整理项目文件分类
人员:任家豪
2023-10-08 16:10:23 +08:00

36 lines
1.1 KiB
C

#ifndef _MCU_BSP_GPIO_H_
#define _MCU_BSP_GPIO_H_
#include "stm32f1xx_hal.h"
typedef void (*GpioTypeCallback) (void);
/* 高低电平 */
#define MCU_BSP_GPIO_OUT_HIGH 1 // 输出高电平
#define MCU_BSP_GPIO_OUT_LOW 0 // 输出低电平
/* GPIO中断种类 */
#define MCU_BSP_GPIO_EXTI0 0
#define MCU_BSP_GPIO_EXTI1 1
#define MCU_BSP_GPIO_EXTI2 2
#define MCU_BSP_GPIO_EXTI3 3
#define MCU_BSP_GPIO_EXTI4 4
#define MCU_BSP_GPIO_EXTI9_5 5
#define MCU_BSP_GPIO_EXTI15_10 6
#define MCU_BSP_GPIO_ALL_EXTI 7
/* GPIO初始化 */
int McuBspGpioInit(GPIO_TypeDef *GPIOx, unsigned short GpioPin, unsigned int GpioMode,
unsigned int GpioSpeed, unsigned int GpioPull, unsigned char ExitMode,
GpioTypeCallback Callback);
/* 设置GPIO输出电平 */
void McuBspGpioSetLevel(GPIO_TypeDef *GPIOx, unsigned short Pin, unsigned char Status);
/* 读取GPIO电平 */
int McuBspGpioGetLevel(GPIO_TypeDef *GPIOx, unsigned short Pin);
/* GPIO Sleep */
void McuBspGpioSleep(void);
/* GPIO WakeUp */
void McuBspGpioWakeUp(void);
#endif