HEL库GPIO端口3只LED红绿灯的周期闪烁
前言
本次实验需要用到STM32CubeMX这个软件
一、在CubeMX中新建项目
-
在File下找到NewPorject(第一次使用时,点击后需要等一段时间)
-
芯片选择,选好后点击右上角的Start
-
配置SYS和RCC
-
配置GPIO,此处用的是A15,B0,C13端口
-
Clock Configuration配置
-
Project Manager配置
-
点击右上角完成创建
2.代码修改
在main.c中,找到While(1),在其中添加如下代码
//写循环执行的代码
HAL_GPIO_WritePin(GPIOA, LED2_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOA,LED3_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOA, LED4_Pin, GPIO_PIN_RESET);
HAL_Delay(1000);
HAL_GPIO_WritePin(GPIOA, LED2_Pin, GPIO_PIN_SET);
HAL_Delay(1000);
HAL_GPIO_WritePin(GPIOA, LED2_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOA,LED3_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOA, LED4_Pin, GPIO_PIN_RESET);
HAL_Delay(1000);
HAL_GPIO_WritePin(GPIOA, LED3_Pin, GPIO_PIN_SET);
HAL_Delay(1000);
HAL_GPIO_WritePin(GPIOA, LED2_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOA,LED3_Pin, GPIO_PIN_RESET);
HAL_GPIO_WritePin(GPIOA, LED4_Pin, GPIO_PIN_RESET);
HAL_Delay(1000);
HAL_GPIO_WritePin(GPIOA, LED4_Pin, GPIO_PIN_SET);
HAL_Delay(1000);
完成后如图
3.烧录测试
参考文章
https://blog.csdn.net/weixin_56102526/article/details/120877293?spm=1001.2014.3001.5501
https://blog.csdn.net/qq_45659777/article/details/120867169?spm=1001.2014.3001.5501