接下来我将为大家讲解STM32开发的输出引脚配置
首先我们以控制 LED 灯 为例子控制GPIO口的输出:
我们将PE10口设置为输出,再点击右边的GENERATE生成文件
如何让LED灯亮起来呢?
我们需要用Clion进行开发,如果用STM32CUBEMX配置好信息的话,生成的包会自带HAL库,我们将用STM32提供的HAL库开发,首先打开Clion,在Clion里打开文件包:
步骤:首先点击File,点击Open,再选择自己创建的开发包。
进入文件之后,我们的main文件在Core文件的Src包里面,Drivers里面的则是stm32提供的HAL库,我们将利用HAL库进行开发:
进入main.c之后,我们会发现里面有很多注释,注释里面会写到USER CODE BEGIN 和 USER CODE END;
这些注释是方便开发者在配置引口调试用的,如果我们在STM32CUBEMX重新再GRNERATE设置过,USER CODE BEGIN 和 USER CODE END 之外的代码将会重新配置,自己写的代码就会消失;
因此我们写的代码要写在USER CODE BEGIN 和 USER CODE END 之内。
/* USER CODE BEGIN WHILE */
while (1)
{
// 闪烁led灯 E组 第10个pin口
HAL_GPIO_WritePin(GPIOE,GPIO_PIN_10,GPIO_PIN_SET);
HAL_Delay(500);
HAL_GPIO_WritePin(GPIOE,GPIO_PIN_10,GPIO_PIN_RESET);
HAL_Delay(500);
/* USER CODE END WHILE */
/* USER CODE BEGIN 3 */
}
HAL_GPIO_WritePin();是HAL库的方法,一般STM32会将引口分组,例如:GPIOE10,指的是GPIOE组的第10个引口。
GPIO_PIN_SET指的是高电平,GPIO_PIN_RESET指的是低电平。
由于LED一端连接了高电平,因此PE10给低电平,LED才会亮。