voidHAL_GPIO_WritePin(GPIO_TypeDef *GPIOx,uint16_tGPIO_Pin, GPIO_PinState PinState){/* Check the parameters */assert_param(IS_GPIO_PIN(GPIO_Pin));assert_param(IS_GPIO_PIN_ACTION(PinState)); if(PinState != GPIO_PIN_RESET){GPIOx-...
voidHAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init);voidHAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin); GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef*GPIOx, uint16_t GPIO_Pin);voidHAL_GPIO_WritePin(GPIO_TypeDef*GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState...
void HAL_GPIO_WritePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin, GPIO_PinState PinState) 1. 其中PinState可选择GPIO_PIN_RESET或GPIO_PIN_SET。GPIO_PIN_RESET为 0 ; GPIO_PIN_SET为 1 void HAL_GPIO_TogglePin(GPIO_TypeDef* GPIOx, uint16_t GPIO_Pin) 1. 用于翻转某个GPIO引脚的电平状态。如果...
GPIO_InitStructure.Mode = GPIO_MODE_OUTPUT_PP; // 输出模式 GPIO_InitStructure.Pull = GPIO_NOPULL; // 不使用内部上下拉电阻 GPIO_InitStructure.Speed = GPIO_SPEED_FREQ_LOW; // 低速 GPIO_InitStructure.Pin = GPIO_PIN_0; // 配置的引脚 HAL_GPIO_Init(GPIOA, &GPIO_InitStructure); // 初始化G...
首先是XXX_hal_gpio.h中可用的PAI GPIO初始化函数 void HAL_GPIO_Init(GPIO_TypeDef *GPIOx, GPIO_InitTypeDef *GPIO_Init); void HAL_GPIO_DeInit(GPIO_TypeDef *GPIOx, uint32_t GPIO_Pin); GPIO读写API GPIO_PinState HAL_GPIO_ReadPin(GPIO_TypeDef*GPIOx, uint16_t GPIO_Pin); ...
GPIO_InitStruct.Speed=GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(LED_GPIO_PORT,&GPIO_InitStruct); //初始化GPIO引脚 HAL_GPIO_WritePin(LED_GPIO_PORT,LED_PIN,GPIO_PIN_RESET);//初始化为低电平 ``` 以上代码片段中,首先使能了GPIOC的时钟,然后配置了引脚13(对应PC13)为推挽输出模式,并初始化为低电平。
2.1 HAL_GPIO_Init( ) 函数功能介绍:该函数主要用来初始化我们需要用到的GPIO端口引脚,设置其工作频率、工作模式、上下拉等参数,当使用CubeMX配置工程时,所有参数在CubeMX中调配,函数自动在工程中生成。 函数参数:GPIOx: 是GPIO_TypeDef * 类型,参数可选范围是:.GPIOA~GPIOG; ...
在编写GPIO驱动程序之前,首先需要对GPIO引脚进行初始化。使用HAL库的函数`HAL_GPIO_Init()`可以初始化一个或多个GPIO引脚,并配置其工作模式、输出类型、输出速度等参数。 2.2 引脚配置 在GPIO初始化完成后,可以通过`HAL_GPIO_ConfigPin()`函数对单个引脚进行进一步的配置。配置项包括上拉/下拉电阻、中断触发方式、...
HAL库文件夹是STM32Cube固件包中重要的一部分,因为HAL库比较特殊,所以我们将其作为独立的章节来专门讲解。 在讲解之前我们需要说明一点,分析HAL库中的源码或者工程中的文件,不管它有多么复杂,无非就是一些.c源文件和.h头文件,还有一些类似.s的启动文件,而头文件中遇见比较多的就是一些宏定义和函数声明,.c...
GPIO_InitStruct.Speed=GPIO_SPEED_FREQ_LOW; HAL_GPIO_Init(LED_GPIO_PORT,&GPIO_InitStruct); //初始化GPIO引脚 HAL_GPIO_WritePin(LED_GPIO_PORT,LED_PIN,GPIO_PIN_RESET);//初始化为低电平 ``` 以上代码片段中,首先使能了GPIOC的时钟,然后配置了引脚13(...