蓝桥杯STM32 G431 hal库开发速成——GPIO输入——按键_stm32 hal 按键

实验现象:按下B1按键,LED1亮!按下B2按键,LED1灭!
按下B3按键,LED2亮!按下B4按键,LED2灭!
1.创建key.c和key.h文件,将其分别放入Src跟Inc文件中,与第一篇文章中代码封装的步骤一致。
2.编写key.c中代码

#include "key.h"
#include "main.h"
#include "led.h"

void key()
{
	//按下B1键 led1灯亮
	if(HAL\_GPIO\_ReadPin(GPIOB,GPIO_PIN_0)==RESET)//B1按下为低电平
	{
		HAL\_Delay(5);//防抖动
		if(HAL\_GPIO\_ReadPin(GPIOB,GPIO_PIN_0)==RESET)//延迟消抖
		{
			//写功能
			led(1,1);
		}
		// 等待按键松开,按键松开之前程序一直卡在while循环里,按键松开之后才能处理其他的程序。
		while(HAL\_GPIO\_ReadPin(GPIOB,GPIO_PIN_0)==RESET);
	}
	//按下B2键,led1灯灭
	if(HAL\_GPIO\_ReadPin(GPIOB,GPIO_PIN_1)==RESET)//B2按下为低电平
	{
		HAL\_Delay(5);
		if(HAL\_GPIO\_ReadPin(GPIOB,GPIO_PIN_1)==RESET)
		{
			//写功能
			led(1,0);
		}
		while(HAL\_GPIO\_ReadPin(GPIOB,GPIO_PIN_1)==RESET);
	}
	//按下B3键,led2灯亮
	if(HAL\_GPIO\_ReadPin(GPIOB,GPIO_PIN_2)==RESET)//B3按
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值